Wadannan sune abubuwan kawai O(n²) aro-arewa. Suna jita a manyan abubuwan shigarwa amma suna da sauiki na fahimta kuma suna da amfani ga koyawa injinzumasainti.
Wadannan sune abubuwan kawai O(n²) aro-arewa. Suna jita a manyan abubuwan shigarwa amma suna da sauiki na fahimta kuma suna da amfani ga koyawa injinzumasainti.
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i] # element to place
j = i - 1
while j >= 0 and arr[j] > key:
arr[j + 1] = arr[j] # shift bigger elements right
j -= 1
arr[j + 1] = key # drop key into the gap
return arr
insertion_sort([5, 2, 4, 1]) # -> [1, 2, 4, 5]
| Aro | Mafi kyau | Mafi muni | Kwatantawa | A wuri |
|---|---|---|---|---|
| Bubble | O(n) | O(n²) | Eh | Eh |
| Selection | O(n²) | O(n²) | A'a | Eh |
| Insertion | O(n) | O(n²) | Eh | Eh |
Insertion sort shine gaske sauri don karancin ko kusan-aro arrays kuma ana amfani da shi a ciki abubuwan haɗe-haɗe. Kaucewa duka uku akan manyan data ba a aro ba — a maimaita O(n log n) sort a maimaita.
Wadannan abubuwan koyawa gina uba ga abubuwan da ba sa canji, musayawa, da tsayin kai kafin ka koma kan mafi yunƙuri algbera.
Insertion sort musamman yana bayyana a cikin asali abubuwan aro (kamar Timsort) don ƙarami-ƙarami abubuwan.
Sanin me ya sa suke O(n²) yana sa tafiya zuwa O(n log n) abubuwan aro masan dadi.