Bir sıralama seçimi birkaç özelliğe indirgenir: zaman karmaşıklığı, kararlılık, yerinde bellek kullanımı ve verilerin doğası. Tek bir sıralama her yerde galip gelmez.
Bir sıralama seçimi birkaç özelliğe indirgenir: zaman karmaşıklığı, kararlılık, yerinde bellek kullanımı ve verilerin doğası. Tek bir sıralama her yerde galip gelmez.
| Algoritma | Ort. zaman | Kötü | Kararlı | Yerinde |
|---|---|---|---|---|
| Insertion | O(n²) | O(n²) | Evet | Evet |
| Merge | O(n log n) | O(n log n) | Evet | Hayır |
| Quick | O(n log n) | O(n²) | Hayır | Evet |
| Heap | O(n log n) | O(n log n) | Hayır | Evet |
# Most languages ship a tuned hybrid; prefer it in production
sorted(data, key=lambda x: x.priority) # stable Timsort in Python
Spesifik bir nedeniniz olmadığı sürece kendi sıralamanızı yazmayin — kütüphane sıralamalarından (Timsort, introsort) muharebe-test edilmiş hibridlerdir.
Sıralamayı veriler ve gereksinimlerle eşleştirmek hem israf edilen zamanı hem de incelikli hataları (kararlılığı kaybetmek gibi) önler.
Dengelemeler hakkında bilgi sahibi olmak, neden standart kitaplıkların Timsort ve introsort gibi hibridleri seçtiğini açıklar.
Bu karşılaştırmalı karar — bir algoritma ezberlemek değil — asıl mühendislik ve mülakatların ödüllendirdiği şeydir.
Junior'dan Senior'a detaylı cevaplarla bir BT mülakat soruları kütüphanesi.
Bağış Yap