 |
Seçerek Sıralama |
Selection Sort Algoritması için tüm durumlardaki zaman karmalıklığı birimi n^2'dir.
Yani;
Selection Sort Best Case (seçerek sıralama en iyi durum) n^2
Selection Sort Worst Case (seçerek sıralama en kötü durum) n^2
Selection Sort Avarage Case (seçerek sıralama ortalama durum) n^2
(n−1)+(n−2)+...+2+1=n(n−1)/2
Yukarıdaki formül dıştaki for döngüsünün yaptırdığı işlem sayısını gösteren ifadedir. Hatırlasanız dıştaki for döngüsü for(int i=0; i<n-1; i++) ile başlıyordu. n yerine n-1 ile başlamamızın sebebi budur. Her adımda bir tane sayı sıralandığından 1 azalır. Bu da içteki for döngüsüyle alakalıdır. O da hatırlarsanız for (int j=i+1; j<n; j++) idi. Selection Sort C kodu uygulamasına makalemizin linkine tıklayarak ulaşabilirsiniz.
Selection Sort Algoritması Yorumu
Selection Sort Algoritması düşük elemanlı dizilerde pek çok nlogn çalışma zamanı olan algoritmaya nazaran daha hızlı işlem yapabilir. Ancak bu durumda insertion sort seçimi çok daha uygun seçim olabilir.
Etiketler: selection sort, selection sort algoritması, selection sort zaman karmaşıklığı, sıralama algoritmaları