BUBBLE SORT(KABARCIK) SIRALAMASI ALGORİTMASINA İHTİYACIM VAR
ÇOK ACİL
YARDIMCI OLURSANIZ ÇOK SEVİNİRİM
ALGORİTMA BİLENLERE
kabarcık sıralamada tüm elemanlar karşılaştırışır ve (büyükten küçüğe sıralama yapııyorsa) büyük sayı yukarıya (dizinin başına) doğru çıkarılır. Bu yüzden (kabarcık gibi yukarı çıkmasına benzetilmesi nedeniyle) kabarcık sıralama adı verilir.
Örnek C kodları
#include<stdio.h>
void main()
{
int yedek,i,j,n;
int sayi[1000];
clrscr();
printf("l#129;ütfen n degerini giriniz:"); //n dizinin uzunlugudur.
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&sayi);
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(sayi[j]<=sayi){
yedek=sayi;
sayi=sayi[j];
sayi[j]=yedek;}
}
}
for(i=0;i<n;i++){
printf(" %d ",sayi);
}
getch();
}
NOT:Turbo c++ da derlenmiştir.
public void bubbleSort(int numbers[], int array_size)
{
int i, j, temp;
for (i = (array_size - 1); i >= 0; i--)
{
for (j = 1; j <= i; j++)
{
if (numbers[j-1] > numbers[j])
{
temp = numbers[j-1];
numbers[j-1] = numbers[j];
numbers[j] = temp;
}
}
}
}
*alıntıdır
Sıralanacak eleman kümesinden ilk eleman alınır. Eğer kendinden sonrakinden büyükse yerleri değiştirilir.
Sonraki elemana geçilir ve aynı işlem tekrarlanır. Dizinin sonuna varıldığında en büyük eleman sonda yer alır. Dizinin başına dönerek
bu işlem sondan birinci elemana kadar tekrarlanır. Her adımda bir eleman daha azaltılarak devam eden iterasyon bütün elemanların yerini bulmasıyla sonlanır.
Bunun birde şeması olacaktı ama bulamadım bulursam eklerim.