Özet - Selection sort
- Algoritmalar kursu
- Başlangıç
- Ders 28/80
- 4 dk
Selection sort uygulayan mini görev yaparsın.
Özet - Selection sort
Bu grupta selection sort'un mantığını, minimum bulmayı, yer değiştirmeyi ve tam sıralamayı öğrendin. Karmaşıklık her zaman O(n^2)'dir.
Selection sort, az yer değiştirme yapar (n-1) ama çok karşılaştırma yapar (n^2). Basit ama yavaştır.
Uygulama Selection sort adımı
selection_step(arr, i) yaz. i'den sonraki minimimi bul ve arr[i] ile değiştir. print(selection_step([3, 1, 2], 0)) ile [1, 3, 2] yazdır.
Başlangıç kodu
def selection_step(arr, i):
# Bir adım yapÖrnek çözüm
def selection_step(arr, i):
# Bir adım yap
min_idx = i
for j in range(i + 1, len(arr)):
if arr[j] < arr[min_idx]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
print(selection_step([3, 1, 2], 0))Beklenen çıktı
[1, 3, 2]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Özet - Selection sort: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
Selection sort |
En küçüğü seç |
Minimum |
İndeks bul |
Swap |
Yer değiştir |
O(n^2) |
Her zaman |
2 Selection sort
Selection sort her adımda ____ bulur.
Selection sort her adımda en küçüğü bulur.
Açıklama: en küçüğü doğru.
3 Selection sort kaç yer değiştirme yapar?
- n^2
- n log n
- 1 Doğru cevap
- n-1
Açıklama: En fazla n-1 yer değiştirme yapar.