Pengurutan Gelembung (Bubble Sort) Pada Bahasa Java

Pada tulisan ini akan di bahas metode pengurutan Bubble. Jika ada pertama lebih besar dari data kedua maka dilakukan pertukaran temapat. Proses ini dilalukan secara terus menerus sampai tidak ada elemen yang layak untuk ditukar lagi. Proses Pengurutan

  • Misalkan mempunyai data larik {43,54,32,67,49}
  • Langkah 1 – Bandingkan data1 dengan data2. Jika data1>data2 maka tukar posisi. Jika data1<data2 tidak dilakukan pertukaran. Data larik{43,54,32,67,49}
  • Langkah 2 – Bandingkan data2dengan data3. Jika data2>data3 maka tukar posisi. Jika data2<data3 tidak dilakukan pertukaran. Data larik{43,32,54,67,49}
  • Langkah 3 – Bandingkan data3 dengan data4. Jika data3>data4 maka tukar posisi. Jika data3<data4 tidak dilakukan pertukaran. Data larik{43,32,54,67,49}
  • Langkah 4 – Bandingkan data4 dengan data5. Jika data4>data5 maka tukar posisi. Jika data4<data5 tidak dilakukan pertukaran. Data larik{43,32,54,49,67}
  • Langkah 5 – Bandingkan data1 dengan data2. Jika data1>data2 maka tukar posisi. Jika data1<data2 tidak dilakukan pertukaran. Data larik{32,43,54,49,67}
  • Langkah 6 – Bandingkan data2dengan data3. Jika data2>data3 maka tukar posisi. Jika data2<data3 tidak dilakukan pertukaran. Data larik{32,43,54,49,67}
  • Langkah 7 – Bandingkan data3 dengan data4. Jika data3>data4 maka tukar posisi. Jika data3<data4 tidak dilakukan pertukaran. Data larik{32,43,49,54,67}
  • Langkah 8 – Bandingkan data4 dengan data5. Jika data4>data5 maka tukar posisi. Jika data4<data5 tidak dilakukan pertukaran. Data larik{32,43,49,54,67}
  • Langkah-langkah diatas diulang terus sampai tidak terjadi pertukaran data sama sekali yang dalam artian data telah terurut.

Algoritma Pengurutan Gelembung

Berikut ini algoritma Pengurutan Gelembung :

do{
   tukar = 0;
   for(i=0; i<(n-1); i++){
      if(tabInt[i] > tabInt[i+1]){
        temp = tabInt[i];
        tabInt[i] = tabInt[i+1];
        tabInt[i+1] = temp;
        tukar = 1;
      }
   }
}while(tukar == 1);

Arah Pengurutan

Pengurutan dari kecil ke besar

if(tabInt[i] > tabInt[i+1]

Pengurutan dari besar ke kecil

if(tabInt[i] < tabInt[i+1]

Kode Program Pengurutan Gelembung

Berikut ini merupakan kode program pengurutan data dengan menggunakan algoritma Bubble Sort

public class BubbleSort {

    public static void main(String[] args) {
        // TODO Auto-generated method stub    
         int[] tabInt = {51,23,17,32,88,43};
         int i,n,temp,tukar;
         n=6;
         
         //keluarkan data awal
         System.out.println("Data Awal");
         for(i=0;i<n;i++){
             System.out.print(tabInt[i]+ " ");
         }
         //bubble sort
         do{
             tukar = 0;
             for(i=0; i<(n-1); i++){
                  if(tabInt[i] > tabInt[i+1]){
                      temp = tabInt[i];
                      tabInt[i] = tabInt[i+1];
                      tabInt[i+1] = temp;
                      tukar = 1;
                  }
             }
         }while(tukar == 1);

         //keluarkan data terurut
         System.out.println("\nData Terurut");
         for(i=0;i<n;i++){
             System.out.print(tabInt[i]+ " ");
         }
    }

}

Demikian penjelasan mengenai pengururan gelembung atau Bubble Sort.

Block AdBlock - Powered by Admiral