Insertion Sort Algoritması

Insertion Sort Algoritması

Insertion Sort Algoritması

  3 dakika Okuma Süresi
Merhabalar, C# derslerimize kaldığımız yerden devam ediyoruz. Bu dersimizde sıralama algoritmalarından biri olan Insertion Sort (Eklemeli Sıralama) Algoritması'nı anlatacağım. Hadi başlayalım !

Öncelikle kodlaması kolaydır, mesela Merge Sort gibi uzun bir kodu yoktur.
Küçük veri dizilerinde oldukça verimli çalışır fakat karmaşıklığı O(n2) olduğundan büyük veriler için verimsiz olmaktadır.

Algoritma, dizinin sonundan başlayarak dizinin diğer elemanları arasında kıyaslama yapar ve araya ekler. Yer değiştirme yapılmaz, iki veri arasına ekleme yapar. Örnek yapısı şu şekildedir;
Insertion Sort Algoritması

Teorik olarak bahsettikten sonra örnek C# kodunu yazalım;

int[] InsertionSort(int[] dizi)
{
    for(int i = 1; i < dizi.Length; i++)
    {
        int deger = dizi[i];
        int j = i - 1;
        while (j >= 0 && dizi[j] > deger)
        {
             dizi[j + 1] = dizi[j];
             j -= 1;
        }
        dizi[j + 1] = deger;
    }
    return dizi;
}
Evet bu fonksiyon tamamlandığında başlangıçta sıralanmamış olan dizi sıralanmış olarak geriye döndürülmektedir.
Yeni bir dizi oluşturulmaz, parametre olarak alınan dizi sıralanıp geri döndürülür.
Evet kodumuzu da yazdık, herşey tamamlandı :) Artık Insertion Sort Algoritması'nı kullanarak dizilerinizi sıralayabilirsiniz.

Ayrıca Insertion Sort Algoritması'nın Roman halk oyunları kullanılarak yapılan canlandırmasını da izlemek isteyebilirsiniz. Güzel bir görsel anlatım olmuş :)

Bu dersimizde bu kadardı, tüm C# derslerimize buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.


  • İçeriği Paylaş:

İÇERİĞİ DEĞERLENDİR

Toplam Değerlendirme Sayısı: 0
Toplam Değerlendirme: 0 / 5

Cevap Yaz