Langkah Sorting Array Menggunakan C / C++ (Metode Bubble Sort )

   


    Ada banyak metode yang bisa digunakan untuk mengurutkan suatu elemen dalam array, yaitu buble sort, insertion sort, maksimum-minimum sort, heap sort, dll. Namun pada kali ini kita hanya akan membahas tentang buble sort. Fungsi dari mengurutkan array ini adalah untuk mempercepat proses pencarian data.

Sorting Menggunakan Metode Buble Sort

Berikut ini adalah contoh sintaksnya :

#include <iostream>
using namespace std;
int main() {
  // Mendeklarasikan array dengan 7 buah elemen
  // yang bertipe int
  int A[7];
  // Mendeklarasikan variabel-variabel bantu
  // yang diperlukan
  int j, k, C, temp;
  // Memasukkan nilai array
  cout<<"Masukkan nilai pada elemen array:"
      <<endl;
  for (C=0; C<7; C++) {
    cout<<"A["<<C<<" ] = "; cin>>A[C];
  }
  // Menampilkan nilai sebelum diurutkan
  cout<<"\nNilai elemen array sebelum diurutkan:"
      <<endl;
  for (C=0; C<7; C++) {
    cout<<"A["<<C<<"] = "<<A[C]<<endl;
  }
  // Melakukan pengurutan elemen array
  // dengan metode gelembung
  for (j=0; j<6; j++) {
     for (k=7; k>0; k--) {    
       if (A[k] < A[k-1]) {
  temp = A[k];
  A[k] = A[k-1];
  A[k-1] = temp;
       }
     }
  }
  // Menampilkan nilai setelah diurutkan
  cout<<"\nNilai elemen array setelah diurutkan:"
      <<endl;
  for (C=0; C<7; C++) {
    cout<<"A["<<C<<"] = "<<A[C]<<endl;
  }
  return 0;
}



Contoh tahapan

apabila ada array dengan elemen :

indeks  : 0   1    2   3   4   5   6
elemen : 5   9   7    2   4   8   3

dilakukan buble sort


Pada saat J = 0

Dilakukan perulangan sebanyak 6 x

Tahap 1
Dilakukan pembandingan antara indeks 6  yang bernilai 3 dengan indeks ke 5 bernilai 8
Karena nilai  indeks ke 6 lebih kecil dari nilai  indeks 5, maka dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6 
elemen : 5   9    7   2   4   3   8


Tahap 2
Dilakukan pembandingan antara indeks 5  yang bernilai 3 dengan indeks ke 4 bernilai 4
Karena nilai  indeks ke 5 lebih kecil dari nilai  indeks 4, maka dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 5   9    7   2   3   4   8


Tahap 3
Dilakukan pembandingan antara indeks 4  yang bernilai 3 dengan indeks ke 3 bernilai 2
Karena nilai  indeks ke 4 lebih besar dari nilai   indeks 3, maka tidak dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 5   9    7   2   3   4   8


Tahap 4
Dilakukan pembandingan antara indeks 3  yang bernilai 2 dengan indeks ke 2 bernilai 7
Karena indeks ke 3 lebih kecil dari indeks 2, maka dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 5   9    2   7   3   4   8


Tahap 5
Dilakukan pembandingan antara indeks 2  yang bernilai 2 dengan indeks ke 1 bernilai 9
Karena indeks ke 2 lebih kecil dari indeks 1, maka dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 5   2    9   7   3   4   8

Tahap 6
Dilakukan pembandingan antara indeks 1  yang bernilai 3 dengan indeks ke 0 bernilai 8
Karena indeks ke 1 lebih kecil dari indeks 0, maka tidak dilakukan swap


hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 2   5    9   7   3   4   8


Pada saat J = 1

Dilakukan perulangan sebanyak 6 x

Tahap 1
Dilakukan pembandingan antara indeks 6  yang bernilai 8 dengan indeks ke 5 bernilai 4
Karena nilai  indeks ke 6 lebih besar dari nilai  indeks 5, maka tidak dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6 
elemen : 2   5    9   7   3   4   8


Tahap 2
Dilakukan pembandingan antara indeks 5  yang bernilai 4 dengan indeks ke 4 bernilai 3
Karena nilai  indeks ke 5 lebih besar dari nilai  indeks 4, maka tidak dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 2   5    9   7   3   4   8


Tahap 3
Dilakukan pembandingan antara indeks 4  yang bernilai 7 dengan indeks ke 3 bernilai 3
Karena nilai  indeks ke 4 lebih kecil dari nilai   indeks 3, maka dilakukan swap

hasil sementara dari tahap ini :


indeks  : 0   1    2   3   4   5   6
elemen : 2   5    9   3   7   4   8


Tahap 4
Dilakukan pembandingan antara indeks 3  yang bernilai 2 dengan indeks ke 2 bernilai 7
Karena indeks ke 3 lebih kecil dari indeks 2, maka dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 5   9    2   7   3   4   8


Tahap 5
Dilakukan pembandingan antara indeks 2  yang bernilai 2 dengan indeks ke 1 bernilai 9
Karena indeks ke 2 lebih kecil dari indeks 1, maka dilakukan swap

hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 5   2    9   7   3   4   8

Tahap 6
Dilakukan pembandingan antara indeks 1  yang bernilai 3 dengan indeks ke 0 bernilai 8
Karena indeks ke 1 lebih kecil dari indeks 0, maka tidak dilakukan swap


hasil sementara dari tahap ini :

indeks  : 0   1    2   3   4   5   6
elemen : 2   5    9   7   3   4   8

0 Response to "Langkah Sorting Array Menggunakan C / C++ (Metode Bubble Sort )"

Post a Comment