SORTING Sorting Tujuan Pengurutan data dalam struktur data

  • Slides: 53
Download presentation
SORTING

SORTING

Sorting • Tujuan • Pengurutan data dalam struktur data sangat penting terutama untuk data

Sorting • Tujuan • Pengurutan data dalam struktur data sangat penting terutama untuk data yang bertipe data numerik ataupun karakter. • Pengurutan dapat dilakukan secara ascending (urut naik) dan descending (urut turun) • Pengurutan (Sorting) adalah proses pengurutan data yang sebelumnya disusun secara acak sehingga tersusun secara teratur menurut aturan tertentu

Contoh: • Data Acak : 5 6 8 1 3 2 5 10 •

Contoh: • Data Acak : 5 6 8 1 3 2 5 10 • Ascending : 1 2 3 5 6 8 10 25 • Descending : 25 10 8 6 5 3 2 1

Metode Sorting • Bubble Sort • Insertion Sort • Selection Sort

Metode Sorting • Bubble Sort • Insertion Sort • Selection Sort

Bubble Sort • Metode sorting termudah • Diberi nama “Bubble” karena proses pengurutan secara

Bubble Sort • Metode sorting termudah • Diberi nama “Bubble” karena proses pengurutan secara berangsur bergerak/berpindah ke posisinya yang tepat, seperti gelembung yang keluar dari sebuah gelas bersoda. • Bubble Sort mengurutkan data dengan cara membandingkan elemen sekarang dengan elemen berikutnya. • Jika elemen sekarang lebih besar dari elemen berikutnya maka kedua elemen tersebut ditukar, jika pengurutan ascending. • Jika elemen sekarang lebih kecil dari elemen berikutnya, maka kedua elemen tersebut ditukar, jika pengurutan descending

Bubble Sort • Algoritma ini seolah-olah menggeser satu per satu elemen dari kanan ke

Bubble Sort • Algoritma ini seolah-olah menggeser satu per satu elemen dari kanan ke kiri atau kiri ke kanan, tergantung jenis pengurutannya. • Ketika satu tahap proses telah selesai, maka bubble sort akan mengulangi proses, demikian seterusnya. • Kapan berhentinya? Bubble sort berhenti jika seluruh array telah diperiksa dan tidak ada pertukaran lagi yang bisa dilakukan, serta tercapai perurutan yang telah diinginkan.

Proses Bubble Sort • Proses 1 1. 1 - 22 10 15 3 8

Proses Bubble Sort • Proses 1 1. 1 - 22 10 15 3 8 2 1. 2 - 22 10 15 3 2 8 1. 3 - 22 10 15 2 3 8 1. 4 - 22 10 2 15 3 8 1. 5 - 22 2 10 15 3 8 1. 6 - 2 22 10 15 3 8 bandingkan tukarkan -Pengecekan dilakukan dari data yang paling akhir. -Data terakhir dibandingkan dengan data didepannya, jika data didepannya lebih besar maka dilakukan penukaran.

Proses Bubble Sort • Proses 2 2. 1 - 2 2. 2 - 2

Proses Bubble Sort • Proses 2 2. 1 - 2 2. 2 - 2 2. 3 - 2 2. 4 - 2 2. 5 - 2 2 22 22 3 10 10 10 3 22 15 3 3 15 10 15 8 8 8 3 22 10 15 8 Tidak ada penukaran karena 3 < 8 Pengurutan berhenti karena dari Proses 1 ini telah didapatkan uruta Data dengan data pertama terkeci -Pengecekan dilakukan kembali dari data yang paling akhir. -Data terakhir dibandingkan dengan data didepannya, jika data didepannya lebih besar maka dilakukan penukaran.

 • Proses 3 22 2 3 8 10 15 8 10 8 15

• Proses 3 22 2 3 8 10 15 8 10 8 15 8 10 15 22 10 15 Pengurutan berhenti karena dari Proses ini telah didapatkan urutan Data dengan data kedua terkecil

 • Proses 4 2 3 8 22 22 10 10 22 22 15

• Proses 4 2 3 8 22 22 10 10 22 22 15 15 Pengurutan berhenti karena dari Proses ini telah didapatkan urutan Data dengan data ketiga terkecil

 • Proses 5 2 3 8 10 22 15 2 3 8 10

• Proses 5 2 3 8 10 22 15 2 3 8 10 15 22 Pengurutan selesai

Insertion Sort • Mirip dengan cara orang mengurutkan kartu, selembar demi selembar kartu diambil

Insertion Sort • Mirip dengan cara orang mengurutkan kartu, selembar demi selembar kartu diambil dan disisipkan (insert) ke tempat yang seharusnya. • Pengurutan dimulai dari data ke-2 sampai dengan data terakhir, jika ditemukan data yang lebih kecil, maka akan ditempatkan (diinsert) diposisi yang seharusnya. • Pada penyisipan elemen, maka elemen-elemen lain akan bergeser ke belakang.

 • Proses 1 0 1 2 3 4 5 22 10 15 3

• Proses 1 0 1 2 3 4 5 22 10 15 3 8 2 10 22 15 3 8 2 • Proses 2 0 1 2 3 4 5 10 22 15 3 8 2 10 15 22 3 8 2

 • Proses 3 0 10 10 10 3 1 2 3 15 22

• Proses 3 0 10 10 10 3 1 2 3 15 22 3 15 3 22 3 15 22 10 15 22 4 5 8 2 8 2

 • Proses 4 0 1 2 3 4 3 10 15 22 8

• Proses 4 0 1 2 3 4 3 10 15 22 8 3 10 15 8 22 3 10 8 15 22 3 8 10 15 22 5 2 2

 • Proses 5 0 3 3 3 2 1 2 3 4 5

• Proses 5 0 3 3 3 2 1 2 3 4 5 8 10 15 22 2 8 10 15 2 22 8 10 2 15 22 8 2 10 15 22 2 8 10 15 22 3 8 10 15 22

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 6 2

Selection Sort 5 1 3 4 6 Largest Comparison Data Movement Sorted 2

Selection Sort 5 1 3 4 6 Largest Comparison Data Movement Sorted 2

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Largest Comparison Data Movement Sorted 3 4 2 6

Selection Sort 5 1 Largest Comparison Data Movement Sorted 3 4 2 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 3 4 Largest Comparison Data Movement Sorted 5 6

Selection Sort 2 1 3 4 Largest Comparison Data Movement Sorted 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 3 Largest Comparison Data Movement Sorted 4 5 6

Selection Sort 2 1 3 Largest Comparison Data Movement Sorted 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Largest Comparison Data Movement Sorted 3 4 5 6

Selection Sort 2 1 Largest Comparison Data Movement Sorted 3 4 5 6

Selection Sort 1 2 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 1 2 Comparison Data Movement Sorted 3 4 5 6

Selection Sort 1 2 3 4 DONE! Comparison Data Movement Sorted 5 6

Selection Sort 1 2 3 4 DONE! Comparison Data Movement Sorted 5 6

Tugas (dikumpulkan pada saat UAS)

Tugas (dikumpulkan pada saat UAS)