Sıralama Algoritmaları Bubble Sort
Bubble sort nedir ?
Sıralama algoritmaları arasında yazılması en kolay olan ve çalışması en yavaş olan sıralaması algoritmasıdır. Programsal mantığı ise, kendisinden sonra gelen dizi elamanı ile kendi değerini kıyaslayıp, büyük ise ikisi arasında yer değişikliği sağlayan sıralama türüdür.
Bubble sort ile bir örnek verecek olursak
3 elemanlı bir dizimiz olsun. dizi= 2, 1, 3 , diye tanımlanan 3 elemanlı bir dizi
1 adım: dizinin ilk elamanı olan 2 sayısını diğer tüm sayılarla kıyaslayacak
1 adım : 2 >1 mi diyecek evet ise
dizimiz: 1, 2, 3 değerini alacak .
2 adım:2>3 mi diyecek hayır gelecek
dizimiz 1 ,2, 3 olarak kalacak.
sürekli devam ederek dıştaki for üç defa içeride ki ise iki defa dönerek programı tamamlayacak.
sürekli devam ederek dıştaki for üç defa içeride ki ise iki defa dönerek programı tamamlayacak.
buble sort |
Sonuç olarak 1,2,3 çıktısını verecek. Bubble sort sıralaması sürekli her elamanı kıyaslayıp en büyük elemanı en sona koyana kadar yer değiştirecektir.
Peki java Bubble Sort kodları nasıl olacak.
package balonsiralama;
public class BalonSiralama {
public static void main(String[] args) {
int[] dizi={5,3,10,-4,15,25};
int takas,i,j; //takas değişkenimiz dizinin bir önceki elemanını tutmak için tanımlandı.
for(i=0;i<dizi.length;i++) //dizinin uzunluğu kadar dönecek ilk for döngümüz.
{
for(j=0;j<dizi.length-1;j++) //dizinin uzunluğu -1 kadar dönecek ikinci for döngümüz.
{
if(dizi[j]>dizi[j+1]) //tuttuğu ilk eleman bir sonraki elemandan büyük ise içeri girecek.
{
takas=dizi[j];//ilk eleman değerini kaybetmemek için takasa atıyoruz.
dizi[j]=dizi[j+1]; //sonraki eleman küçük olduğu için atıyoruz.
dizi[j+1]=takas; //ve yer değişmiş oluyor.
}
}
}
for(i=0;i<dizi.length;i++) //sıralanan dizinin ekrana yazılması.
{
System.out.println(dizi[i]);
}
}
}
Github deposundan ulaşmak için link: Bubble Sort Github adresine giderek indirip çalıştırabilirsiniz.
Yorumlar
Yorum Gönder