Materi kuliah 08 sort part 3

Post on 22-Jul-2015

133 views 7 download

Transcript of Materi kuliah 08 sort part 3

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();

}