Asslamu'alaikum w.w.,
Pada
Kesempatan ini saya akan memposting tentang : Algorithm 5.4 Sorting By Insertion. Ini merupakan dari Materi SEARCHING AND SORTING.
Algoritma :
1. Membangun sebuah array [1 .. n]
elemen n.
2. Menemukan minimum dan meletakkannya di tempat untuk bertindak sebagai sentinel :
3. Sementara masih ada unsur-unsur yang akan dimasukkan di bagian memerintahkan melakukan
a. Pilih x elemen berikutnya untuk dimasukkan
b. Sementara x kurang dari sebelumnya unsur melakukan
c. Insert x pada posisi saat ini
2. Menemukan minimum dan meletakkannya di tempat untuk bertindak sebagai sentinel :
3. Sementara masih ada unsur-unsur yang akan dimasukkan di bagian memerintahkan melakukan
a. Pilih x elemen berikutnya untuk dimasukkan
b. Sementara x kurang dari sebelumnya unsur melakukan
c. Insert x pada posisi saat ini
begin {search for x's position then insert it}
j:=1; x:=a[i];
while x>a[j] do j:=j+1
for k:= i down to j+1 do a[k]:= a[k-1];
a[j]:=x
end
Program C++ :
#include <iostream.h>
void main(){
int data[100];
int a,b,c,d,x;
int temp;
cout<<"PROGRAM SORTING DATA "<<endl;
cout<<"---------------------------------------------"<<endl;
cout<<"Masukkan jumlah data : ? ";cin>>x;
for(d=1;d<=x;d++)
{
cout<<"Data ke-"<<d<<" = ";cin>>data[d];
}
cout<<"\nData Sebelum Diurutkan \n";
for(d=1;d<=x;d++){
cout<<"\t"<<data[d];
}
for(a=0;a<x;a++){
for(b=0;b<x;b++)
if(data[b]>= data[b+1])
{
temp=data[b];
data[b]=data[b+1];
data[b+1]=temp;
}
}
cout<<"\n\nData setelah diurutkan :\n";
for(c=0;c<x;c++)
cout<<"\t"<<data[c];
cout<<"\n\n---------------------------------------------"<<endl
}
int data[100];
int a,b,c,d,x;
int temp;
cout<<"PROGRAM SORTING DATA "<<endl;
cout<<"---------------------------------------------"<<endl;
cout<<"Masukkan jumlah data : ? ";cin>>x;
for(d=1;d<=x;d++)
{
cout<<"Data ke-"<<d<<" = ";cin>>data[d];
}
cout<<"\nData Sebelum Diurutkan \n";
for(d=1;d<=x;d++){
cout<<"\t"<<data[d];
}
for(a=0;a<x;a++){
for(b=0;b<x;b++)
if(data[b]>= data[b+1])
{
temp=data[b];
data[b]=data[b+1];
data[b+1]=temp;
}
}
cout<<"\n\nData setelah diurutkan :\n";
for(c=0;c<x;c++)
cout<<"\t"<<data[c];
cout<<"\n\n---------------------------------------------"<<endl
}
system("PAUSE");
return EXIT_SUCCESS;
}
Semoga Bermanfaat.
Wassalamu'alaikum w.w.
Tidak ada komentar:
Posting Komentar