26 Nisan 2015 Pazar

SIRALAMA ALGORİTMALARI

              KABARCIK SIRALAMA (BUBBLE SORT) ALGORİTMASI

  1. Dizinin elemanları üzerinden ilk elemandan başlayarak ve her geçişte sadece yan yana bulunan iki eleman arasında sıralama yapılır
  2. Dizinin başından sonuna kadar tüm elemanlar bir kez işleme tabi tutulduğunda dizinin son elemanı (küçükten büyüğe sıralandığında) en büyük eleman haline gelecektir.
  3. Bir sonraki tarama ise bu en sağdaki eleman dışarıda bırakılarak gerçekleştirilmektedir. Bu dışarıda bırakma işlemi de dış döngüdeki sayaç değişkeninin değerinin her işletimde bir azaltılmasıyla sağlanmaktadır. Sayaç değişkeninin değeri 1 değerine ulaştığında ise dizinin solunda kalan son iki eleman da sıralanmakta ve sıralama işlemi tamamlanmaktadır.                  
  4. (n-1) iterasyon ve her iterasyonda (n-1) karşılaştırma.
  5. Toplam karşılaştırma sayısı : (n-1)*(n-1) = n2-2n+1 = O(n2)                                                                                                                                                                   
örnek kod 

#include<stdio.h>
#include<conio.h>
main()
{
      int eleman ;
      int gecici;
      int *dizi;
      printf("siralanacak dizi kac elemanli olacak ?");
      scanf("%d",&eleman);
      printf("siralanacak diziyi girin\n");
      for(int i=0;i<eleman;i++)
      {
              scanf("%d",&dizi[i]);
              
              }
      for(int i=0;i<eleman;i++){
              for(int j=i+1;j<eleman;j++)
              
              {
                      if(dizi[i]>dizi[j])
                      {
                      gecici=dizi[i];
                      dizi[i]=dizi[j];
                      dizi[j]=gecici;
                      }
                      
                      }
              
              }
      printf("siralandiktan sonraki hali \n");
      for(int i=0;i<eleman;i++)
      {
              printf("%d ",dizi[i]);
              
              }
      
      getch();
      }

                                                                                                                                                                                             

Hiç yorum yok:

Yorum Gönder