Sıralama algoritmaları yazılım geliştiriciler için vazgeçilmezdir. Elimizdeki veri kümesini bir sisteme göre (bu özellikle sayı veya string ifadeler olabilir) büyükten küçüğe veya küçükten büyüğe sıralama yöntemleridir bu algoritmalar. Birden fazla sıralama algoritmaları var ve bunların çeşitli avantaj ve performansları var.
Birleştirme Sıralama Mantığı
Sıralama mantığımız veri kümemizi parçalara bölerek bu parçaları kendi arasında sıraladıktan sonra birleştirerek tekrar sıralama yöntemidir. Veri kümemiz iki parçaya ayırlır. Sonra tekrar birleştirilir. Birleştirilen bu veri kümesi tekrar karşılaştırılarak elemanlarımız sıralanmış olur. Bu parçalanan elemanları sıralama işlemine tekrar tutmak için recursive fonksiyon kullanılır.
Görsel Anlatım
C Sharp
while (soldizi { if (dizi[soldizi] gecici[gecicidizi++] = dizi[soldizi++]; else gecici[gecicidizi++] = dizi[sagdizi++]; } if (soldizi == ortaDizi) while (sagdizi gecici[gecicidizi++] = dizi[sagdizi++]; else while (soldizi gecici[gecicidizi++] = dizi[soldizi++]; for (int i = sol; i { dizi[i] = gecici[i]; }
JAVA
while (soldizi { if (dizi[soldizi] gecici[gecicidizi++] = dizi[soldizi++]; else gecici[gecicidizi++] = dizi[sagdizi++]; } if (soldizi == ortaDizi) while (sagdizi gecici[gecicidizi++] = dizi[sagdizi++]; else while (soldizi gecici[gecicidizi++] = dizi[soldizi++]; for (int i = sol; i { dizi[i] = gecici[i]; }
C Sharp ve Java kodlarında bir fark bulunmamakta. Çünkü karşılaştırma deyimleri döngüsel ifadeler operatörler C türevi diller olduğu için aynıdır.
Görsel:Wikipedia.com
One Comment