Selection sort juga cukup mudah dipahami, karena algoritma yang digunakan
juga cukup sederhana. Algoritma yang digunakan mirip dengan metode bubble
sort. Pada tiap proses, akan didapat nilai terkecil (atau terbesar, tergantung
ascending atau descending). Bedanya, pada proses #1, kita bandingkan indeks ke-
0 dengan seluruh data lainnya. Jika ada data yang lebih kecil, maka lakukan
swapping. Di proses berikutnya, kita bandingkan indeks ke-1 dengan data – data
indeks berikutnya lagi (kecuali indeks ke-0. Mengapa? Tugas Anda menjawab! :D).
#include <iostream.h>
#include <conio.h>
void main()
{
cout<<"===PROGRAM SELECTION SORT==="<<endl;
int pos,i,j,t,k;
//Input Data
int data[8]={5,4,2,1,3};
cout<<"Data sebelum diurut: "<<endl;
for(int ctr=0; ctr<5; ctr++)
{
cout<<" "<<data[ctr];
}
cout<<"\n";
for(int i=0;i<=4-1;i++)
for(j = i+1;j<=4;j++)
if(data[i] > data[j]) //pos = j;
{
t = data[i];
data[i] = data[j];
data[j] = t;
cout<<data[0]<<" "<<data[1]<<" "<<data[2]<<" "<<data[3]<<" "<<data[4]<<" "<<endl;
}
cout<<endl;
cout<<"\n\n";
//tampilkan data
cout<<"Data Setelah di Sort : ";
for(int i=0; i<=4; i++)
cout<<" "<<data[i];
cout<<endl;
cout<<"\n\nSorting Selesai";
getch();
}
0 komentar:
Posting Komentar