Bubble Sort

 BUBBLE SORT

Pengertian

    Metode pengurutan algoritma dengan cara melakukan penukaran data secara terus menerus sampai bisa di pastikan dalam suatu iterasi tertentu tidak ada lagi perubahan/penukaran. 


Langkah-langkah

Diketahui : data bubble sort menggunakan nested loop

Data awal : 10, 5, 40, 35, 20, 15, 30

Pass 1
1. 10 > 5, maka ditukar → 5, 10, 40, 35, 20, 15, 30
2. 10 < 40, tidak ditukar → 5, 10, 40, 35, 20, 15, 30
3. 40 > 35, maka ditukar → 5, 10, 35, 40, 20, 15, 30
4. 40 > 20, maka ditukar → 5, 10, 35, 20, 40, 15, 30
5. 40 > 15, maka ditukar → 5, 10, 35, 20, 15, 40, 30
6. 40 > 30, maka ditukar → 5, 10, 35, 20, 15, 30, 40
Hasil : 5, 10, 35, 20, 15, 30, 40

Pass 2
1. 5 < 10, tidak ditukar → 5, 10, 35, 20, 15, 30, 40
2. 10 < 35, tidak ditukar → 5, 10, 35, 20, 15, 30, 40
3. 35 > 20, maka ditukar → 5, 10, 20, 35, 15, 30, 40
4. 35 > 15, maka ditukar → 5, 10, 20, 15, 35, 30, 40
5. 35 > 30, maka ditukar → 5, 10, 20, 15, 30, 35, 40
Hasil : 5, 10, 20, 15, 30, 35, 40

Pass 3
1. 5 < 10, tidak ditukar → 5, 10, 20, 15, 30, 35, 40
2. 10 < 20, tidak ditukar → 5, 10, 20, 15, 30, 35, 40
3. 20 > 15, maka ditukar → 5, 10, 15, 20, 30, 35, 40
4. 20 < 30, tidak ditukar → 5, 10, 15, 20, 30, 35, 40
Hasil : 5, 10, 15, 20, 30, 35, 40

Pas 4
1. 5 < 10, tidak ditukar → 5, 10, 15, 20, 30, 35, 40
2. 10 < 15, tidak ditukar → 5, 10, 15, 20, 30, 35, 40
3. 15 < 20, tidak ditukar → 5, 10, 15, 20, 30, 35, 40
Hasil : 5, 10, 15, 20, 30, 35, 40

Pass 5
1. 5 < 10, tidak ditukar → 5, 10, 15, 20, 30, 35, 40
2. 10 < 15, tidak ditukar → 5, 10, 15, 20, 30, 35, 40
Hasil : 5, 10, 15, 20, 30, 35, 40

Pass 6
1. 5 < 10, tidak ditukar → 5, 10, 15, 20, 30, 35, 40
Hasil : 5, 10, 15, 20, 30, 35, 40

Pseudocode

Start
        data = [10, 5, 40, 35, 20, 15, 30]
        n = panjang(data)
        Input "Data sebelum diurutkan:", data

            FOR i = 0 TO n - 2 DO
               FOR j = 0 TO n - 2 - i DO
                  IF data[j] > data[j + 1] THEN
                       temp = data[j]
                       data[j] = data[j + 1]
                       data[j + 1] = temp
                  END IF
             END FOR

        Output "Pass", i + 1, ":", data
                    "Data sesudah diurutkan:", data
End

Flowchart

Komentar

Postingan populer dari blog ini

Jenis-Jenis Perulangan

Variabel dan Tipe Data