Mengurutkan Data Dengan Bubble Sort

ilustrasi gelembung

Metode Bubble Sort merupakan proses pengurutan data dengan memindahkan data secara berangsur-angsur ke posisi yang tepat.Metode Bubble Sort ini memang terinspirasi dari gelembung yang berada di permukaan air,karena berat jenis gelembung lebih kecil dari pada air maka gelembung akan selalu terapung di permukaan air.Kira-kira seperti itulah gambaran pengurutan data menggunakan Bubble Sort

Cara kerja Algoritma Bubble Sort dalam pengurutan data :

  • Tentukan dulu mau urut secara Ascending(kecil ke besar) atau Descending(besar ke kecil)
  • Hitung jumlah datanya dulu
  • Jumlah iterasi pada setiap proses adalah jumlah data dikurangi satu
  • Bandingkan suatu data dengan data di sebelahnya kemudian tukar posisinya jika tidak benar urutannya
  • Meskipun data sudah urut, proses tetap dilakukan untuk memastikan tidak ada lagi pertukaran data
Nah,sekarang saya kasih contoh cara mengurutkan data dengan Bubble Sort :

1) Secara Ascending

Saya punya data sebagai berikut [5,3,9,11,8,12] dan saya ingin mengurutkannya dari kecil ke besar maka begini langkahnya

Jumlah iterasi = 6-1 =5

Iterasi 1
[5 3 9 11 8 12]  5 > 3 tukar posisinya
[3 5 9 11 8 12]  5 < 9 tetap
[3 5 9 11 8 12]  9 < 11 tetap
[3 5 9 11 8 12]  11 > 8 tukar posisinya
[3 5 9 8 11 12]  11 < 12 tetap

Iterasi 2
[3 5 9 8 11 12] 3 < 5 tetap
[3 5 9 8 11 12] 5 < 9 tetap
[3 5 9 8 11 12] 9 > 8 tukar posisinya
[3 5 8 9 11 12] 9 < 11 tetap
[3 5 8 9 11 12] 11 < 12 tetap

Kita lakukan iterasi sekali lagi untuk memastikan tidak ada lagi pertukaran posisi

Iterasi 3
[3 5 8 9 11 12] 3 < 5 tetap
[3 5 8 9 11 12] 5 < 8 tetap
[3 5 8 9 11 12] 8 < 9 tetap
[3 5 8 9 11 12] 9 < 11 tetap
[3 5 8 9 11 12] 11 < 12 tetap

Karena sudah tidak ada lagi pertukaran data,kita hentikan proses di sini saja.Kita sudah mendapatkan data yang terurut secara ascending yaitu [3,5,8,9,11,12]

2) Secara Descending

Saya akan menggunakan contoh data yang sama namun kali ini kita akan mengurutkannya dari besar ke kecil (Descending) Data yang belum urut tadi adalah [5,3,9,11,8,12]

Iterasi 1
[5 3 9 11 8 12] 5 > 3 tetap
[5 3 9 11 8 12] 3 < 9 tukar posisinya
[5 9 3 11 8 12] 3 < 11 tukar posisinya
[5 9 11 3 8 12] 3 < 8 tukar posisinya
[5 9 11 8 3 12] 3 < 12 tukar posisinya

Iterasi 2
[5 9 11 8 12 3] 5 < 9 tukar posisinya
[9 5 11 8 12 3] 5 < 11 tukar posisinya
[9 11 5 8 12 3] 5 < 8 tukar posisinya
[9 11 8 5 12 3] 5 < 12 tukar posisinya
[9 11 8 12 5 3] 5 > 3 tetap

Iterasi 3
[9 11 8 12 5 3] 9 < 11 tukar posisinya
[11 9 8 12 5 3]  9 > 8 tetap
[11 9 8 12 5 3] 8 < 12 tukar posisinya
[11 9 12 8 5 3]  8 > 5 tetap
[11 9 12 8 5 3] 5 > 3 tetap

Iterasi 4
[11 9 12 8 5 3] 11 > 9 tetap
[11 9 12 8 5 3] 9 < 12 tukar posisinya
[11 12 9 8 5 3] 9 > 8 tetap
[11 12 9 8 5 3] 8 > 5 tetap
[11 12 9 8 5 3] 5 > 3 tetap

Iterasi 5
[11 12 9 8 5 3] 11 < 12 tukar posisiya
[12 11 9 8 5 3] 11 > 9 tetap
[12 11 9 8 5 3] 9 > 8 tetap
[12 11 9 8 5 3] 8 > 5 tetap
[12 11 9 8 5 3] 5 > 3 tetap

Iterasi 6
[12 11 9 8 5 3] 12 > 11 tetap
[12 11 9 8 5 3] 11 > 9 tetap
[12 11 9 8 5 3] 9 > 8 tetap
[12 11 9 8 5 3] 8 > 5 tetap
[12 11 9 8 5 3] 5 > 3 tetap

Karena sudah tidak ada pertukaran data lagi,maka prosesnya sudah selesai.Kita mendapatkan data yang sudah terurut secara descending yaitu [12,11,9,8,5,3]

Contoh kode dan Output Bubble Sort Ascending di java

kode bubble sort ascending java

kode bubble sort ascending java

output bubble sort ascending java







Kalau mau merubahnya jadi Descending,tinggal rubah saja tanda > menjadi <  

kode bubble sort descending java


output bubble sort descending java


Contoh kode dan output Bubble Sort secara Ascending Python :

kode bubble sort ascending python

output bubble sort ascending python


Kalau mau descending,sama seperti tadi tinggal rubah tanda > menjadi <

kode bubble sort descending python

output bubble sort descending python


Jangan spam atau promosi di sini jgn juga taruh link aktif kalau mau dapat backlink bisa taruh di profil saja (Name/URL)
EmoticonEmoticon