Özet - Insertion sort
- Algoritmalar kursu
- Başlangıç
- Ders 32/80
- 4 dk
Insertion sort uygulayan mini görev yaparsın.
Özet - Insertion sort
Bu grupta insertion sort'un mantığını, kaydırma işlemini, tam sıralamayı ve avantajlarını öğrendin. Karmaşıklık O(n^2), en iyi O(n).
Insertion sort, neredeyse sıralı dizilerde ve küçük verilerde tercih edilir. Yerinde sıralar ve az yazma yapar.
Uygulama Tam insertion sort
insertion_full(arr) yaz. for ve while ile sırala. print(insertion_full([3, 1, 4, 1, 5, 9, 2, 6])) ile [1, 1, 2, 3, 4, 5, 6, 9] yazdır.
Başlangıç kodu
def insertion_full(arr):
# Tam sıralaÖrnek çözüm
def insertion_full(arr):
# Tam sırala
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >= 0 and arr[j] > key:
arr[j + 1] = arr[j]
j = j - 1
arr[j + 1] = key
return arr
print(insertion_full([3, 1, 4, 1, 5, 9, 2, 6]))Beklenen çıktı
[1, 1, 2, 3, 4, 5, 6, 9]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Özet - Insertion sort: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
Insertion sort |
Doğru yere koy |
Kaydırma |
Sağa taşı |
En iyi |
O(n) |
Yerinde |
Ek bellek yok |
2 Insertion sort
Insertion sort her elemanı ____ bölüme yerleştirir.
Insertion sort her elemanı sıralı bölüme yerleştirir.
Açıklama: sıralı doğru.
3 Insertion sort neredeyse sıralı dizide ne kadar sürer?
- O(n^2)
- O(1) Doğru cevap
- O(n log n)
- O(n)
Açıklama: Neredeyse sıralı dizide O(n)'dir.