Assalamu'alaikum wr.wb
Pada tanggal 14 mei 2016 adalah pertemuan ke sembilan matakuliah Algoritma dan Pemrograman yang membahas tentang "Sorting". Dosen menjelaskan materi dan menjelaskan tata cara membuat program Bubble Sort, Selection Sort dan Insertion Sort. Kemudian setelah Dosen menjelaskan, setiap anggota kelompok di perintah untuk mengerjakan tugas sesuai yang ada di rencana kuliah dan saya kebagian mengerjakan program Selection sorting.
Berikut cara mencari setiap bagian sorting:
1. membandingkan 2 bilangan
2. memindah elemen dari 2 bilangan
3. menggeser bilangan
4. menggunakan indeks array
1. Bubble Sort
Metode pengurutan gelembung (bubble sort) mempunyai perilaku seperti gelembung di mana bila akan diurutkan naik, nilai yang besar akan naik (indeks besar) sementara nilai yang kecil akan turun (ke indeks yang kecil).
Sebagai ilustrasi, proses bubble sort adalah sebagai berikut :
Data awal : [8, 4, 7, 3, 1, 2, 6, 5] 8←→4, 4←→3, 3←→1
fase 1 [1, 8, 7, 4, 3, 2, 6, 5] 8←→7, 7←→4, 4←→3, 3←→2
fase 2 [1, 2, 8, 7, 4, 3, 6, 5] 8←→7, 7←→4, 4←→3
fase 3 [1, 2, 3, 8, 7, 4, 6, 5] 8←→7, 7←→4
fase 4 [1, 2, 3, 4, 8, 7, 6, 5] 8←→7, 7←→6, 6←→5
fase 5 [1, 2, 3, 4, 5, 8, 7, 6] 8←→7, 7←→6
fase 6 [1, 2, 3, 4, 5, 6, 8, 7] 8←→7
fase 7 [1, 2, 3, 4, 5, 6, 7, 8]
fase 8 [1, 2, 3, 4, 5, 6, 7, 8]
Data awal : [8, 4, 7, 3, 1, 2, 6, 5] 8←→4, 4←→3, 3←→1
fase 1 [1, 8, 7, 4, 3, 2, 6, 5] 8←→7, 7←→4, 4←→3, 3←→2
fase 2 [1, 2, 8, 7, 4, 3, 6, 5] 8←→7, 7←→4, 4←→3
fase 3 [1, 2, 3, 8, 7, 4, 6, 5] 8←→7, 7←→4
fase 4 [1, 2, 3, 4, 8, 7, 6, 5] 8←→7, 7←→6, 6←→5
fase 5 [1, 2, 3, 4, 5, 8, 7, 6] 8←→7, 7←→6
fase 6 [1, 2, 3, 4, 5, 6, 8, 7] 8←→7
fase 7 [1, 2, 3, 4, 5, 6, 7, 8]
fase 8 [1, 2, 3, 4, 5, 6, 7, 8]
2. Selection Sort
Algoritma pengurutan dengan metode seleksi dapat diilustrasikan demikian. Misalkan
diberikan data awal :
[8, 4, 7, 3, 1, 2, 6, 5]
[8, 4, 7, 3, 1, 2, 6, 5]
Data awal : [8, 4, 7, 3, 1, 2, 6, 5] 1 terkecil, 8←→1
fase 1 [1, 4, 7, 3, 8, 2, 6, 5] 2 terkecil, 4←→2
fase 2 [1, 2, 7, 3, 8, 4, 6, 5] 3 terkecil, 7←→3
fase 3 [1, 2, 3, 7, 8, 4, 6, 5] 4 terkecil, 7←→4
fase 4 [1, 2, 3, 4, 8, 7, 6, 5] 5 terkecil, 8←→5
fase 5 [1, 2, 3, 4, 5, 7, 6, 8] 6 terkecil, 7←→6
fase 6 [1, 2, 3, 4, 5, 6, 7, 8] 7 terkecil, tetap
fase 7 [1, 2, 3, 4, 5, 6, 7, 8]
fase 8 [1, 2, 3, 4, 5, 6, 7, 8]
fase 1 [1, 4, 7, 3, 8, 2, 6, 5] 2 terkecil, 4←→2
fase 2 [1, 2, 7, 3, 8, 4, 6, 5] 3 terkecil, 7←→3
fase 3 [1, 2, 3, 7, 8, 4, 6, 5] 4 terkecil, 7←→4
fase 4 [1, 2, 3, 4, 8, 7, 6, 5] 5 terkecil, 8←→5
fase 5 [1, 2, 3, 4, 5, 7, 6, 8] 6 terkecil, 7←→6
fase 6 [1, 2, 3, 4, 5, 6, 7, 8] 7 terkecil, tetap
fase 7 [1, 2, 3, 4, 5, 6, 7, 8]
fase 8 [1, 2, 3, 4, 5, 6, 7, 8]
3. Insertion Sort
Untuk menjelaskan algoritma pengurutan dengan metode penyisipan, bayangkan setumpuk kartu ada di meja, dengan nomor :
[8, 4, 7, 3, 1, 2, 6, 5]
[8, 4, 7, 3, 1, 2, 6, 5]
Urutan selengkapnya adalah sebagai berikut :
Data awal : [8, 4, 7, 3, 1, 2, 6, 5]
fase 1, 4 masuk [4, 8, 7, 3, 1, 2, 6, 5]
fase 2, 7 masuk [4, 7, 8, 3, 1, 2, 6, 5]
fase 3, 3 masuk [3, 4, 7, 8, 1, 2, 6, 5]
fase 4, 1 masuk [1, 3, 4, 7, 8, 2, 6, 5]
fase 5, 2 masuk [1, 2, 3, 4, 7, 8, 6, 5]
fase 6, 6 masuk [1, 2, 3, 4, 6, 7, 8, 5]
fase 7, 5 masuk [1, 2, 3, 4, 5, 6, 7, 8]
fase 8 [1, 2, 3, 4, 5, 6, 7, 8]
Data awal : [8, 4, 7, 3, 1, 2, 6, 5]
fase 1, 4 masuk [4, 8, 7, 3, 1, 2, 6, 5]
fase 2, 7 masuk [4, 7, 8, 3, 1, 2, 6, 5]
fase 3, 3 masuk [3, 4, 7, 8, 1, 2, 6, 5]
fase 4, 1 masuk [1, 3, 4, 7, 8, 2, 6, 5]
fase 5, 2 masuk [1, 2, 3, 4, 7, 8, 6, 5]
fase 6, 6 masuk [1, 2, 3, 4, 6, 7, 8, 5]
fase 7, 5 masuk [1, 2, 3, 4, 5, 6, 7, 8]
fase 8 [1, 2, 3, 4, 5, 6, 7, 8]
Sekian refleksi minggu kali ini,
Wassalamu'alaikum wr.wb
Tidak ada komentar:
Posting Komentar