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
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.
Hızlı stabil javascript sıralama algor...
Sıralama 10 numara için en hızlı yolu?...
Python azalan sıralama listesi...
İki ölçüte göre bir Python listesi sır...
Hızlı dize arama algoritması nedir?...