Transcript

Algoritma & Struktur Data 2P-3

Fery Updi, M.Kom

1

Capaian Kompetensi• Mahasiswa mampu:

1. Menjelaskan pengertian Sort dan Penyajian Sort

2. Memahami dan menjelaskan cara kerja Sort

2

Pokok Bahasan

• Sort

3

4

Sort

Sort adalah suatu proses pengurutan data yangsebelumnya disusun secara acak atau tidak teraturmenjadi urut atau teratur menurut suatu aturantertentu.

5

Biasanya pengurutan dibagi menjadi 2 yaitu :

• Ascending

Pengurutan dari kecil ke besar

• Descending

Pengurutan dari besar ke kecil

Sort

6

Ada banyak cara atau metode untuk melakukanpengurutan ascending atau pun descending.

Dalam proses pengurutan kita akan memerlukanproses penukaran data.

Proses penukaran data tidak bisa kita lakukan secaralangsung dengan menukar isi variabel.

Penukaran data dilakukan dengan metode swap.

Sort

Swap

Misalkan terdapat dua data yang akan ditukar yaitu :

Cara yang salah :

Cara yang benar :

data[1] = 5;data[2] = 10;

data[1] = data[2];data[2] = data[1];

swap = data[1];data[1] = data[2];data[2] = swap;

7

Sort

Untuk melakukan pengurutan terdapat beberapacara atau metode yaitu :- Bubble Sort- Selection Sort- Insertion Sort

8

Bubble Sort

Bubble Sort adalah suatu metode pengurutan yangmembandingkan elemen yang sekarang denganelemen yang berikutnya.

Apabila elemen yang sekarang > elemen berikutnya,maka posisinya ditukar, jika tidak maka tidak perluditukar.

9

Bubble Sort

Misalkan kita memiliki data acak sebagai berikut :

5, 34, 32, 25, 75, 42, 22, 2

10

Bubble Sort Data sebelumnya :

5, 34, 32, 25, 75, 42, 22, 2

Langkah ke 0 :

- 5 > 34 ? TIDAK (tetap) = 5, 34

- 34 > 32 ? YA (tukar) = 32, 34

- 34 > 25 ? YA (tukar) = 25, 34

- 34 > 75 ? TIDAK (tetap) = 34, 75

- 75 > 42 ? YA (tukar) = 42, 75

- 75 > 22 ? YA (tukar) = 22, 75

- 75 > 2 ? YA (tukar) = 2, 75

Hasil :

5, 32, 25, 34, 42, 22, 2, 75

11

Nilai terkecil ditukar ke depan,Bagi 2 dari jumlah data

Bubble Sort Data sebelumnya :

5, 32, 25, 34, 42, 22, 2, 75

Langkah ke 1 :

- 5 > 32 ? TIDAK (tetap) = 5, 32

- 32 > 25 ? YA (tukar) = 25, 32

- 32 > 34 ? TIDAK (tetap) = 32, 34

- 34 > 42 ? TIDAK (tetap) = 34, 42

- 42 > 22 ? YA (tukar) = 22, 42

- 42 > 2 ? YA (tukar) = 2, 42

- 42 > 75 ? TIDAK (tetap) 42, 75

Hasil :

5, 25, 32, 34, 22, 2, 42, 75

12

Nilai terkecil ditukar ke depan,Bagi 2 dari jumlah data

Bubble Sort Data sebelumnya :

5, 25, 32, 34, 22, 2, 42, 75

Langkah ke 2 :

- 5 > 25 ? TIDAK (tetap) = 5, 25

- 25 > 32 ? TIDAK (tetap) = 25, 32

- 32 > 34 ? TIDAK (tetap) = 32, 34

- 34 > 22 ? YA (tukar) = 22, 34

- 34 > 2 ? YA (tukar) = 2, 34

- 34 > 42 ? TIDAK (tetap) = 34, 42

- 42 > 75 ? TIDAK (tetap) = 42, 75

Hasil :

5, 25, 32, 22, 2, 34, 42, 75

13

Nilai terkecil ditukar ke depan,Bagi 2 dari jumlah data

Bubble Sort Data sebelumnya :

5, 25, 32, 22, 2, 34, 42, 75

Langkah ke 3 :

- 5 > 25 ? TIDAK (tetap) = 5, 25

- 25 > 32 ? TIDAK (tetap) = 25, 32

- 32 > 22 ? YA (tukar) = 22, 32

- 32 > 2 ? YA (tukar) = 2, 32

- 32 > 34 ? TIDAK (tetap) = 32, 34

- 34 > 42 ? TIDAK (tetap) = 34, 42

- 42 > 75 ? TIDAK (tetap) = 42, 75

Hasil :

5, 25, 22, 2, 32, 34, 42, 75

14

Nilai terkecil ditukar ke depan,Bagi 2 dari jumlah data

Bubble Sort Data sebelumnya :

5, 25, 22, 2, 32, 34, 42, 75

Langkah ke 4 :

- 5 > 25 ? TIDAK (tetap) = 5, 25

- 25 > 22 ? YA (tukar) = 22, 25

- 25 > 2 ? YA (tukar) = 2, 25

- 25 > 32 ? TIDAK (tetap) = 25, 32

- 32 > 34 ? TIDAK (tetap) = 32, 34

- 34 > 42 ? TIDAK (tetap) = 34, 42

- 42 > 75 ? TIDAK (tetap) = 42, 75

Hasil :

5, 22, 2, 25, 32, 34, 42, 75

15

Nilai terkecil ditukar ke depan,Bagi 2 dari jumlah data

Bubble Sort Data sebelumnya :

5, 22, 2, 25, 32, 34, 42, 75

Langkah ke 5 :- 5 > 22 ? TIDAK (tetap) = 5, 22

- 22 > 2 ? YA (tukar) = 2, 22

- 22 > 25 ? TIDAK (tetap) = 22, 25

- 25 > 32 ? TIDAK (tetap) = 25, 32

- 32 > 34 ? TIDAK (tetap) = 32, 34

- 34 > 42 ? TIDAK (tetap) = 34, 42

- 42 > 75 ? TIDAK (tetap) = 42, 75

• Hasil :

5, 2, 22, 25, 32, 34, 42, 75

16

Nilai terkecil ditukar ke depan,Bagi 2 dari jumlah data

Bubble Sort

Data sebelumnya :

5, 2, 22, 25, 32, 34, 42, 75

Langkah ke 6 :- 5 > 2 ? YA (tukar) = 2, 5

- 5 > 22 ? TIDAK (tetap) = 5, 22

- 22 > 25 ? TIDAK (tetap) = 22, 25

- 25 > 32 ? TIDAK (tetap) = 25, 32

- 32 > 34 ? TIDAK (tetap) = 32, 34

- 34 > 42 ? TIDAK (tetap) = 34, 42

- 42 > 75 ? TIDAK (tetap) = 42, 75

Hasil :

2, 5, 22, 25, 32, 34, 42, 75

17

Nilai terkecil ditukar ke depan,Bagi 2 dari jumlah data

Bubble Sort

Data Awal :

5, 34, 32, 25, 75, 42, 22, 2

Data Akhir :

2, 5, 22, 25, 32, 34, 42, 75

18

Bubble Sort

19

Output

20

21

Next

Topik :

Selection Sort

22


Top Related