Bağlantılı bir listede ikili arama yapabilir misiniz?
Bağlantılı bir listede ikili arama yapabilir misiniz?

Video: Bağlantılı bir listede ikili arama yapabilir misiniz?

Video: Bağlantılı bir listede ikili arama yapabilir misiniz?
Video: Excel 1 Dakika - İki Listeyi Karşılaştırma 2024, Mayıs
Anonim

Evet, Ikili arama üzerinde mümkündür bağlı liste eğer NS liste sipariş edilir ve sen içindeki elementlerin sayısını bilmek liste . Ama sıralama yaparken liste , yapabilirsiniz tek bir öğeye, o düğüme, yani önceki bir düğüme veya sonraki bir düğüme bir işaretçi aracılığıyla erişin.

Öyleyse, bağlantılı bir listede ikili arama uygulandığında zaman karmaşıklığı ne olacak?

Zaman karmaşıklığı O(log n) değerinden fazla olmamalıdır. Olarak bağlantılı liste denersek rastgele erişim sağlamaz ikili arama uygula algoritma o niyet ihtiyacımız olduğu gibi O(n)'ye ulaşmak bulmak uzunluğu liste ve ortasına gidin.

Ayrıca bilin, ikili arama nasıl uygulanır? Ikili arama : Arama art arda bölerek sıralanmış bir dizi arama yarı yarıya aralık. Tüm diziyi kapsayan bir aralıkla başlayın. değeri ise arama tuşu, aralığın ortasındaki öğeden daha az ise, aralığı alt yarıya daraltın. Aksi takdirde, üst yarıya kadar daraltın.

Bu nedenle, ikili arama bir listedeki bir öğeyi bulmak için hangi yöntemi kullanır?

Ikili arama sıralanmış diziler üzerinde çalışır. Ikili arama karşılaştırarak başlar eleman hedef ile dizinin ortasında değer . eğer hedef değer eşleşir eleman , dizideki konumu döndürülür. eğer hedef değer daha az eleman , NS arama dizinin alt yarısında devam eder.

Bağlantılı bir listeyi nasıl yinelersiniz?

Bir yineleyici döngü için kullanılabilir vasıtasıyla bir Bağlantılı liste . İçinde daha fazla öğe varsa, hasNext() yöntemi true değerini döndürür. Bağlantılı liste ve aksi takdirde yanlış. next() yöntemi, içindeki bir sonraki öğeyi döndürür. Bağlantılı liste ve sonraki öğe yoksa NoSuchElementException istisnasını atar.

Önerilen: