Upload
budi-yono
View
139
Download
7
Embed Size (px)
Citation preview
I Gusti Agung Made Wirautama, S.Kom
Selection Sort Selection Sort adalah suatu metode pengurutan yang
membandingkan elemen sekarang dengan elemen berikutnya sampai ke elemen yang terakhir.
Jika ditemukan elemen lain yang lebih kecil dari elemen sekarang maka dicatat posisinya dan langsung ditukar.
Selection Sort Misalkan kita memiliki data acak sebagai berikut :
5, 34, 32, 25, 75, 42, 22, 2
Selection Sort Langkah 0, data sebelumnya :
5, 34, 32, 25, 75, 42, 22, 2
Pembanding Posisi Terkecil 5 > 34 ? TIDAK 0
5 > 32 ? TIDAK 0
5 > 25 ? TIDAK 0
5 > 75 ? TIDAK 0
5 > 42 ? TIDAK 0
5 > 22 ? TIDAK 0
5 > 2 ? YA 7
Hasil, tukar posisi 0 dan posisi 7 :
2, 34, 32, 25, 75, 42, 22, 5
Selection Sort Langkah 1, data sebelumnya :
2, 34, 32, 25, 75, 42, 22, 5 Pembanding Posisi Terkecil 34 > 32 ? YA 2 32 > 25 ? YA 3 25 > 75 ? TIDAK 3 25 > 42 ? TIDAK 3 25 > 22 ? YA 6 22 > 5 ? YA 7
Hasil, tukar posisi 1 dan posisi 7 :2, 5, 32, 25, 75, 42, 22, 34
Selection Sort Langkah 2, data sebelumnya :
2, 5, 32, 25, 75, 42, 22, 34
Pembanding Posisi Terkecil 32 > 25 ? YA 3
25 > 75 ? TIDAK 3
25 > 42 ? TIDAK 3
25 > 22 ? YA 6
22 > 34 ? TIDAK 6
Hasil, tukar posisi 2 dan posisi 6 :
2, 5, 22, 25, 75, 42, 32, 34
Selection Sort Langkah 3, data sebelumnya :
2, 5, 22, 25, 75, 42, 32, 34
Pembanding Posisi Terkecil
25 > 75 ? TIDAK 3
25 > 42 ? TIDAK 3
25 > 32 ? TIDAK 3
25 > 34 ? TIDAK 3
Hasil, tukar posisi 3 dan posisi 3 :
2, 5, 22, 25, 75, 42, 32, 34
Selection Sort Langkah 4, data sebelumnya :
2, 5, 22, 25, 75, 42, 32, 34
Pembanding Posisi Terkecil
75 > 42 ? YA 5
42 > 32 ? YA 6
32 > 34 ? TIDAK 6
Hasil, tukar posisi 4 dan posisi 6 :
2, 5, 22, 25, 32, 42, 75, 34
Selection Sort Langkah 5, data sebelumnya :
2, 5, 22, 25, 32, 42, 75, 34
Pembanding Posisi Terkecil
42 > 75 ? TIDAK 5
42 > 34 ? YA 7
Hasil, tukar posisi 5 dan posisi 7 :
2, 5, 22, 25, 32, 34, 75, 42
Selection Sort Langkah 6, data sebelumnya :
2, 5, 22, 25, 32, 34, 75, 42
Pembanding Posisi Terkecil
75 > 42 ? YA 7
Hasil, tukar posisi 6 dan posisi 7 :
2, 5, 22, 25, 32, 34, 42, 75
Selection Sort Data Awal :
5, 34, 32, 25, 75, 42, 22, 2
Data Akhir :
2, 5, 22, 25, 32, 34, 42, 75
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main()
{
int data[8] = {5, 34, 32, 25, 75, 42, 22, 2};
int swap, terkecil;
cout<<"Data sebelum diurutkan : "<<endl;
for(int i=0; i<8; i++)
{
cout<<setw(3)<<data[i];
}
cout<<endl;
for(int i=0; i<7; i++)
{
terkecil = i;
for(int j=i+1; j<8; j++)
{
if(data[terkecil] > data[j])
{
terkecil = j;
}
}
swap = data[i];
data[i] = data[terkecil];
data[terkecil] = swap;
}
cout<<"Data setelah diurutkan : "<<endl;
for(int i=0; i<8; i++)
{
cout<<setw(3)<<data[i];
}
getch();
}