Membuat Program C++ Menggunakan Sort
Contoh Program C++ Menggunakan Sort
Contoh 1
Source Code :
#include <iostream>
#include<conio.h>
#include <stdio.h>
using namespace std;
main()
{
int i,j,n,temp;
int data[20];
printf("Berapa data yang akan diurutkan? ");
scanf("%i",&n);
for(i=0;i<n;i++)
{
printf("Masukkan data ke-%i=",i+1);
scanf("%i",&data[i]);
}
for(i=0;i<n;i++)
{
temp=data[i];
j=i-1;
while((data[j]>=temp)&&(j>0))
{
data[j+1]=data[j];
j=j-1;
}
if(temp>=data[j])
data[j+1]=temp;
else
{
data[j+1]=data[j];
data[j]=temp;
}
}
printf("\nSetelah Pengurutan\n");
for(i=0;i<n;i++)
{
printf("Elemen ke-%i=%i\n",i+1,data[i]);
}
getch();
}
Output :
Contoh 2
Source Code :
#include <iostream>
#include<conio.h>
#include <stdio.h>
#include<iomanip>
using namespace std;
void cetak(int data[],int n)
{
int i;
for(i=0;i<n;i++)
{
cout<<setw(3)<<data[i];
}
};
int partisi(int data[], int p, int r)
{
int x,i,j,temp;
x=data[p];
i=p;
j=r;
while(1)
{
while(data[j]>x)
j--;
while(data[i]<x)
i++;
if(i<j)
{
temp=data[i];
data[i]=data[j];
data[j]=temp;
}
else
return j;
}
};
void quick_sort(int data[], int p, int r)
{
int q;
if(p<r)
{
q=partisi(data,p,r+1);
quick_sort(data,p,q);
quick_sort(data,q+1,r);
}
};
main()
{
int nilai[20];
int i,n;
cout<<"Masukkan banyak bilangan : ";cin>>n;
for(i=0;i<n;i++)
{
cout<<"Element ke-"<<i<<" : ";cin>>nilai[i];
}
cout<<"\nData sebelum diurutkan : ";
cetak(nilai,n);
cout<<endl;
quick_sort(nilai,0,n-1);
cout<<"\nData setelah diurutkan : ";
cetak(nilai,n);
getch();
}
Ouput :
Comments
Post a Comment