![]() |
sokma sıralaması |
(Eleman Sayısı - 1) adet Iteration (geçiş) yapılırHer geçiş içerisinde karşılaştırma işlemleri yapılır. (maksimum n-1 kadar yapılabilir)Her karşılaştırma işlemi içerisinde sayı doğru yere yerleştirilir.
for(int i=1; i<n; i++){}
for(int i=1; i<n; i++)
{
int temp = dizi[i];}
for(int i=1; i<n; i++)
{
int temp = dizi[i];
int j = i-1;
}Bakın şimdi Algoritmanın genel konseptine tekrar bakarsak artık karşılaştırma işlemlerini yapacağımız döngüyü oluşturabiliriz. Döngü diyorum, çünkü örneğimizden de gördüğünüz üzere 1 taneden fazla karşılaştırma yapabiliriz. Maksimum dizimizin eleman sayısından 1 eksik olmak üzere karşılaştırma yapılabilir. Bu yüzden bizim döngüye ihtiyacımız var. Ama hangisine? While mı? For mı?
for(int i=1; i<n; i++)
{
int temp = dizi[i];
int j = i-1;
while(temp<dizi[j] && j>=0)
{
dizi[j+1] = dizi[j];
j--;
}
}
Etiketler: insertion sort, insertion sort algoritması, insertion sort c kodu, insertion sort programı, sıralama algoritmaları