download

SORTING
Matakuliah
Tahun
Versi
: T0974 / Algoritma dan Metode Object Oriented Programming I
: 2008
: 1/0
Learning Outcomes
Pada akhir pertemuan ini, diharapkan
mahasiswa akan mampu:
• Menjelaskan definisi sorting
• Mensimulasikan algoritma sorting
• Menggunakan sorting dalam
pembuatan program
Bina Nusantara
Outline Materi
•
•
•
•
•
Definisi Sorting
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
Bina Nusantara
Definisi Sorting
• Pengurutan bilangan, huruf, kata, atau
nilai lainnya sesuai dengan aturan tertentu
• Mengilustrasikan pemecahan masalah
• Teknik penggunaan seleksi, perulangan,
method, dan array
• Demonstrasi performa/kompleksitas
algoritma
• Mempercepat proses searching
Bina Nusantara
Algoritma Sorting
•
Algoritma sorting dasar:
– Bubble Sort
– Insertion Sort
– Selection Sort
•
Algoritma sorting lanjutan:
–
–
–
–
–
–
Bina Nusantara
Merge Sort
Quick Sort
Bucket Sort
Shell Sort
Radix Sort
External Sort
Bubble Sort
Bina Nusantara
Bubble Sort
• Disebut juga sinking sort atau exchange sort
• Ascending  pengurutan dari kecil ke besar
Descending  pengurutan dari besar ke kecil
• Nilai dikirimkan dalam array
• Nilai bersebelahan dibandingkan
• Jika increasing, maka ditukar menjadi
decreasing
• Pada putaran ke:
– 1, array ke 1 (index 0) berupa nilai terkecil
– 2, array ke 2 (index 1) berupa nilai terkecil kedua
– n-1, array ke n (index n-1) berupa nilai terbesar
• Jumlah putaran = n-1
Bina Nusantara
Bubble Sort
Bubble sort secara ascending
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
• Pengurutan secara ascending
• Pengurutan secara descending
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Bubble Sort
Bina Nusantara
Selection Sort
Bina Nusantara
Selection Sort
• Nilai dikirimkan dalam array
• Nilai yang dicari terbesar, diletakkan di
akhir
• Pada putaran ke:
– 1, array ke 1 (index 0) berupa nilai terkecil
– 2, array ke 2 (index 1) berupa nilai terkecil kedua
– n-1, array ke n (index n-1) berupa nilai terbesar
• Jumlah putaran = n-1
Bina Nusantara
Selection Sort
• Selection sort secara ascending
• Selection sort secara descending
Bina Nusantara
Selection Sort
Bina Nusantara
Selection Sort
Bina Nusantara
Selection Sort
Bina Nusantara
Selection Sort
Bina Nusantara
Insertion Sort
Bina Nusantara
Insertion Sort
• Nilai dikirimkan dalam array
• Menggunakan bantuan penampung
• Nilai dibandingkan dengan index
sebelumnya
• Setiap putaran tidak menghasilkan nilai
terbesar atau terkecil
• Jumlah putaran = n-1
Bina Nusantara
Insertion Sort
• Insertion sort secara ascending
• Insertion sort secara descending
Bina Nusantara
Insertion Sort
Bina Nusantara
Did You Know?
• Jika bilangan sudah terurut, Bubble Sort
tetap melakukan pengecekan
• Menyebabkan eksekusi lebih lama
• Solusi  Bubble Flag
Bina Nusantara
Advanced Learning
Bina Nusantara
Advanced Learning
• Nilai dikirimkan dalam array
• Membagi data menjadi dua berdasarkan
index
• Masing-masing diurutkan
• Menggabungkan kembali data
Bina Nusantara
Advanced Learning
Bina Nusantara
Advanced Learning
Bina Nusantara
Advanced Learning
Bina Nusantara
Referensi
• Introdution to Java Programming. 7ed.
Liang. 2009. p227-230, p864-866
• Bubble Sort Algorithm in Java.
http://www.geekpedia.com/tutorial272_Bub
ble-Sort-Algorithm-in-Java.html
Bina Nusantara