Bubble Sort
·
Definisi
Bubble
sort adalah salah satu algoritma untuk sorting data, atau kata ainnya
mengurutkan data dari yang erbesar ke yang terkecil atau sebaliknya (Ascensing
atau Descending). Bubble sort (metode gelembung) adalah metode / algoritma
pengurutan dengan cara melakukan penukaran data dengan tepat disebelhnya secara
terus menerus sampai bias dipastikan dalam satu iterasi tertenu tidak ada lagi
perubahan. Algoritma bubble sort adalah salah satu algoritma pengurutan yang
paling simple, baik dalam hal pengertian maupun penerapannya. Ide dari
algoritma ini adalah mengulang proses pembandingan antara tiap – tiap elemen
array dan menukarnya apabila urutannya salah, penukaran tersebut harus diulang
sampai tidak ada penukaran lagi.
·
Ilustrasi
·
Algoritma
for
i in range (0, len(data)-1):
print ('Langkah ke-%d: ' % (i+1), end='')
for j in range(len(data)-1, i, -1):
if data[j] < data[j-1]:
temp <- data[j]
data[j] <- data[j-1]
data[j-1] <-
temp
·
Kode Program
def bubblesort(data):
for i in range (0, len(data)-1):
print ('Langkah ke-%d: ' % (i+1), end='')
for j in range (len(data)-1, i, -1):
if data[j] < data[j-1]:
temp = data[j]
data[j] = data[j-1]
data[j-1] = temp
print(data)
data = [12, 35, 9, 11, 3, 17, 23, 15,
31, 20]
Hasil Run :
Modifikasi Bubblesort agar data yang diurutkan tidak diurutkan kembali
Kode program :
def
shortBubbleSort(lst):
exchanges = True
passnum = len(lst)-1
while passnum and exchanges > 0:
exchanges = False
for i in range(passnum):
if lst[i]>lst[i+1]:
lst[i],lst[i+1] =
lst[i+1],lst[i]
passnum = passnum - 1
for i in range (passnum,0,-1):
if lst[i] < lst[i-1]:
exchanges = True
print(lst)
return(lst)
lst=[3, 2, 1]
shortBubbleSort(lst)


Belum ada tanggapan untuk "Bubble Sort"
Posting Komentar