Contoh 1
#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 :
Tidak ada komentar:
Posting Komentar