Bubble Sort

Pengertian/Konsep Buble Sort


Metode pengurutan gelembung (Bubble Sort) diinspirasikan oleh gelembung sabun yang berada dipermukaan air. Karena berat jenis gelembung sabun lebih ringan daripada berat jenis air, maka gelembung sabun selalu terapung ke atas permukaan. Prinsip di atas dipakai pada pengurutan gelembung.
Bubble sort (metode gelembung) adalah metode/algoritma pengurutan dengan dengan cara melakukan penukaran data dengan tepat disebelahnya secara terus menerus sampai bisa dipastikan dalam satu iterasi tertentu tidak ada lagi perubahan. Jika tidak ada perubahan berarti data sudah terurut. Disebut pengurutan gelembung karena masing-masing kunci akan dengan lambat menggelembung ke posisinya yang tepat.



       Algoritma Bubble Sort

1.    Membandingkan data ke-i dengan data ke-(i+1) (tepat bersebelahan). Jika tidak sesuai maka tukar (data ke-i = data ke-(i+1) dan data ke-(i+1) = data ke-i). Apa maksudnya tidak sesuai? Jika kita menginginkan algoritme menghasilkan data dengan urutan ascending (A-Z) kondisi tidak sesuai adalah data ke-i > data ke-i+1, dan sebaliknya untuk urutan descending (A-Z).
2.    Membandingkan data ke-(i+1) dengan data ke-(i+2). Kita melakukan pembandingan ini sampai data terakhir. Contoh: 1 dgn 2; 2 dgn 3; 3 dgn 4; 4 dgn 5 … ; n-1 dgn n.
3.    Selesai satu iterasi, adalah jika kita sudah selesai membandingkan antara (n-1) dgn n. Setelah selesai satu iterasi kita lanjutkan lagi iterasi berikutnya sesuai dengan aturan ke-1. mulai dari data ke-1 dgn data ke-2, dst.
4.    Proses akan berhenti jika tidak ada pertukaran dalam satu iterasi.

      Baiklah kita akan memulai pembahasan materi tentang bagaimana Membuat Program Bubble Sort di Bahasa Pemrograman Python. Silahkan cermati program di bawah ini :


    1. mylist=[45,23,9,100,77,21,54]
    2. def Bubble(mylist):
    3.     counter=0
    4.     for x in range(len(mylist)-1, 0, -1):
    5.         for y in range(x):
    6.             counter +=1
    7.             if mylist[y] > mylist[y+1]:
    8.                 mylist[y], mylist[y+1] = mylist[y+1], mylist[y]
    9.         print(mylist)       
    10.     print("Hasil : ",mylist)
    11.     print("Jumlah Literasi : ",counter)
    12. Bubble(mylist)

Komentar

Postingan populer dari blog ini

Infix, Prefix dan Postfix pada Python

Shell Sort

Dequeue