SORU
6 EKİM 2009, Salı


Ne'en hızlı bağlantılı bir listesi sıralama algoritması s?

Eğer O(n log n) bağlı bir liste yapabileceğiniz en iyi olduğunu merak ediyorum.

CEVAP
6 EKİM 2009, Salı


Hiçbir iyi O(N log N) olarak bunu beklemek mantıklızaman hızla azalıyor.

Ancak, ilginç kısmı ise*,* 1 ** 0, kötü davranış ve böylece sıralayabilirsiniz eğer araştırmaktır.

Simon Tatham, Putty şöhret, 2* *açıklar. Şu yorumları şöyle tamamlıyor:

Kendisine saygısı olan bir algoritma sıralama gibi, bu sefer O(N log N) çalışan vardır. Bu Mergesort çünkü, en kötü durum çalışma süresi(N günlük N); patolojik durum vardır.

Yardımcı depolama gereksinimi ve (sıralama rutin içinde birkaç değişken yani) küçük sabittir. Diziler, bağlı listeler doğal olarak farklı davranışları sayesinde, bu Mergesort uygulama O(N) yardımcı depolama maliyeti normalde algoritma ile ilişkili önler.

Ayrıca bağlı ve çift bağlı listeler, hem de tek başına çalışan bir örnek C uygulaması var.

@Jørgen Fogh aşağıda bahseder gibi, büyük-O gösterimi bir algoritma daha iyi bellek nedeniyle gerçekleştirmek için neden olabilecek bazı faktörler sürekli gizlemek olabilir mevkiinde, öğeleri sayısının az olması nedeniyle, vb.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ben Vivona

    Ben Vivona

    24 Ocak 2010
  • Phandroid

    Phandroid

    26 Ocak 2009
  • XxMinayaxX1

    XxMinayaxX1

    9 Mayıs 2012