Pages

Selasa, 22 Maret 2011

Contoh Program Quick Sort Recursif

Contoh Program Quick Sort Recursif dengan menggunakan Bahasa C 

//Quick recursive
#include<stdio.h>
#include<conio.h>
#define n 11

int A[n]={25,12,38,15,20,45,34,3,29,7,22};

void sort(int kiri,int kanan);

int main()
{
   int i;
   printf("QUICK SORT RECURSIVE");
   printf("\n\n");
   printf("Sebelum disort : ");
   for (i=0;i<=n-1;i++)
      printf("  %d", A[i] ) ;
      printf("\n\n");

   sort(0,n-1);

   printf("\nSetelah disort : ");
   for (i=0;i<=n-1;i++)
      printf("  %d", A[i] ) ;
  
   getch();
}

void sort(int kiri,int kanan)
{
int i,j,pivot,W;
pivot = A[(kiri+kanan)/2] ;
i = kiri ;
j= kanan;

   while (i<=j)
       {
         while (A[i]<pivot)
            i++;
         while (pivot<A[j])
            j--;
         if (i<=j)
           {
            W=A[i];
            A[i]=A[j];
            A[j]=W;
            i++;
            j--;
           }
       }
  if (kiri<j)
    sort(kiri, j);
  if (i<kanan)
    sort(i,kanan);
}

2 komentar:

chimme mengatakan...

tambahin penjelasannya donk sist..
ato komentar2 ny...
hehe

Jelita_momoen mengatakan...

oke sist ,,,
hehehe (n_n") thanks for ur suggestion ^^

Posting Komentar