Array Bubble Sort C++ Code

4 min read Jun 28, 2024
Array Bubble Sort C++ Code

Bubble Sort dalam Bahasa C++

Bubble Sort adalah algoritma pengurutan sederhana yang membandingkan elemen-elemen yang berdekatan dalam array dan menukarnya jika tidak dalam urutan yang benar. Algoritma ini berulang melalui array, membandingkan setiap pasangan elemen yang berdekatan. Jika elemen pertama lebih besar daripada elemen kedua, keduanya ditukar. Proses ini berulang sampai seluruh array terurut.

Kode C++ untuk Bubble Sort

Berikut adalah contoh kode C++ untuk mengimplementasikan algoritma Bubble Sort:

#include 

using namespace std;

void bubbleSort(int arr[], int n) {
  for (int i = 0; i < n - 1; i++) {
    for (int j = 0; j < n - i - 1; j++) {
      if (arr[j] > arr[j + 1]) {
        // Tukar elemen jika tidak terurut
        int temp = arr[j];
        arr[j] = arr[j + 1];
        arr[j + 1] = temp;
      }
    }
  }
}

int main() {
  int arr[] = {64, 34, 25, 12, 22, 11, 90};
  int n = sizeof(arr) / sizeof(arr[0]);

  cout << "Array sebelum diurutkan: \n";
  for (int i = 0; i < n; i++) {
    cout << arr[i] << " ";
  }

  bubbleSort(arr, n);

  cout << "\nArray setelah diurutkan: \n";
  for (int i = 0; i < n; i++) {
    cout << arr[i] << " ";
  }
  return 0;
}

Penjelasan Kode:

  1. Deklarasi Fungsi: Fungsi bubbleSort() menerima array arr[] dan ukurannya n sebagai input.

  2. Loop Luar: Loop luar for berulang n-1 kali, di mana n adalah ukuran array. Setiap iterasi loop luar memastikan bahwa elemen terbesar ditempatkan di posisi yang benar.

  3. Loop Dalam: Loop dalam for berulang n-i-1 kali. Loop ini membandingkan elemen yang berdekatan dalam array dan menukarnya jika tidak dalam urutan yang benar.

  4. Penukaran Elemen: Jika elemen pertama lebih besar daripada elemen kedua, keduanya ditukar menggunakan variabel temp.

  5. Fungsi Utama: Fungsi main() menginisialisasi array, memanggil fungsi bubbleSort() untuk mengurutkan array, dan mencetak array yang diurutkan.

Keuntungan dan Kerugian

Keuntungan:

  • Mudah dipahami dan diimplementasikan: Algoritma ini sederhana dan mudah dipahami.
  • Kode yang ringkas: Implementasinya relatif singkat.

Kerugian:

  • Tidak efisien: Bubble Sort adalah algoritma pengurutan yang lambat, khususnya untuk dataset yang besar. Kompleksitas waktunya adalah O(n^2), yang berarti waktu yang dibutuhkan untuk mengurutkan meningkat secara kuadrat seiring dengan peningkatan ukuran dataset.
  • Tidak praktis untuk dataset yang besar: Bubble Sort tidak praktis untuk digunakan pada dataset yang besar karena kompleksitas waktunya yang tinggi.

Kesimpulan

Bubble Sort adalah algoritma pengurutan dasar yang mudah dipahami dan diimplementasikan. Namun, algoritma ini tidak efisien untuk dataset yang besar dan tidak praktis untuk penggunaan praktis. Algoritma pengurutan yang lebih efisien seperti Merge Sort, Quick Sort, dan Heap Sort biasanya lebih disukai untuk aplikasi yang membutuhkan kinerja tinggi.

Latest Posts


Featured Posts