By: William Hartanto

Apa itu Sorting

Sorting adalah proses pengurutan data baik dari nilai tertinggi maupun dari nilai terendah. Ada banyak algoritma popular untuk mengurutkan data seperti Bubble Sort, Selection Sort, Quick Sort, Insertion Sort, Merge Sort. Berikut adalah penjelasan dari algoritma Bubble Sort.

Apa itu Bubble Sort

Bubble Sort adalah metode pengurutan algoritma dengan cara melakukan penukaran data secara terus menerus sampai bisa dipastikan dalam suatu iterasi tertentu tidak ada lagi perubahan/penukaran. Algoritma ini menggunakan perbandingan dalam operasi antar elemennya.

Berikut ini adalah gambaran dari algoritma bubble sort:

  1. Bandingkan nilai data ke-1 dan data ke-2
  2. Jika data ke-1 lebih besar dari data ke-2 maka tukar posisinya
  3. Kemudian data yg lebih besar tadi dibandingkan dengan data ke-3
  4. Lakukan langkah nomer 2 hingga selesai.

Baca Juga: Jurusan Desain Interior

Berikut ini contoh implementasi algoritma Bubble Sort dalam Bahasa pemrograman Python :

def a(x):
for i in range(len(x)-1,0,-1):
for j in range(i):
if x[j]>x[j+1]:
temp = x[j]
x[j]=x[j+1]
x[j+1]=temp
angka = [47,10,98,1001,8,79,100,55,78,18]
a(angka)
print(angka)

Ketika Coding tersebut dirun, maka akan muncul hasil seperti dibawah ini :

[8, 10, 18, 47, 55, 78, 79, 98, 100, 1001]

Algoritma Bubble Sort adalah salah satu algoritma pengurutan yang paling sederhana dan paling mudah dipahami dalam pemrograman. Algoritma ini bekerja dengan cara membandingkan dan menukar pasangan elemen yang berdekatan dalam sebuah array, dan mengulanginya hingga seluruh array tersusun dalam urutan yang diinginkan. Disini kita akan mempelajari mengenai cara kerja Algoritma Bubble Sort

Inilah Cara Kerja Bubble Sort

Proses pengurutan Bubble Sort dapat dijelaskan dalam beberapa langkah berikut:

  1. Iterasi melalui Array: Mulai dari elemen pertama, bandingkan setiap pasangan elemen yang berdekatan.
  2. Tukar Elemen: Jika elemen pertama lebih besar daripada elemen kedua, tukar posisi mereka. Ini memastikan bahwa elemen yang lebih besar “menggelembung” ke akhir array setelah setiap iterasi.
  3. Lanjutkan ke Elemen Berikutnya: Pindah ke pasangan elemen berikutnya dan ulangi proses perbandingan dan penukaran hingga akhir array.
  4. Pengulangan Proses: Setelah menyelesaikan satu iterasi melalui array, ulangi proses dari awal. Setiap kali, elemen terbesar akan berada pada posisinya yang benar. Oleh karena itu, pada setiap iterasi berikutnya, kita dapat mengecualikan elemen terakhir dari perbandingan karena sudah berada di tempat yang benar.
  5. Penghentian: Proses ini berlanjut sampai tidak ada lagi pertukaran yang diperlukan, yang berarti array sudah terurut.

Contoh Bubble Sort

Mari kita lihat contoh pengurutan array menggunakan Bubble Sort. Misalkan kita memiliki array berikut:

5,2,9,1,5,65, 2, 9, 1, 5, 65,2,9,1,5,6

Berikut adalah langkah-langkah penerapan Bubble Sort pada array ini:

  1. Iterasi Pertama:
    • Bandingkan 5 dan 2: Tukar (array menjadi 2,5,9,1,5,62, 5, 9, 1, 5, 62,5,9,1,5,6)
    • Bandingkan 5 dan 9: Tidak ada penukaran
    • Bandingkan 9 dan 1: Tukar (array menjadi 2,5,1,9,5,62, 5, 1, 9, 5, 62,5,1,9,5,6)
    • Bandingkan 9 dan 5: Tukar (array menjadi 2,5,1,5,9,62, 5, 1, 5, 9, 62,5,1,5,9,6)
    • Bandingkan 9 dan 6: Tukar (array menjadi 2,5,1,5,6,92, 5, 1, 5, 6, 92,5,1,5,6,9)
  2. Iterasi Kedua:
    • Bandingkan 2 dan 5: Tidak ada penukaran
    • Bandingkan 5 dan 1: Tukar (array menjadi 2,1,5,5,6,92, 1, 5, 5, 6, 92,1,5,5,6,9)
    • Bandingkan 5 dan 5: Tidak ada penukaran
    • Bandingkan 5 dan 6: Tidak ada penukaran
  3. Iterasi Ketiga:
    • Bandingkan 2 dan 1: Tukar (array menjadi 1,2,5,5,6,91, 2, 5, 5, 6, 91,2,5,5,6,9)
    • Bandingkan 2 dan 5: Tidak ada penukaran
    • Bandingkan 5 dan 5: Tidak ada penukaran

Pada titik ini, array sudah terurut: 1,2,5,5,6,91, 2, 5, 5, 6, 91,2,5,5,6,9.