Contoh Program Bubble Sort pada C++

 


Bubble Sort adalah salah satu algoritma pengurutan sederhana yang bekerja dengan cara membandingkan setiap pasangan elemen yang berdekatan dan menukarnya jika elemen tersebut tidak berada dalam urutan yang benar. Proses ini diulangi hingga tidak ada lagi elemen yang perlu ditukar.

Berikut adalah contoh implementasi algoritma Bubble Sort dalam bahasa pemrograman C++.


Program Bubble Sort pada C++

#include <iostream>

using namespace std;

 

// Fungsi untuk melakukan Bubble Sort

void bubbleSort(int arr[], int n) {

    for (int i = 0; i < n - 1; i++) {

        // Loop untuk membandingkan elemen

        for (int j = 0; j < n - i - 1; j++) {

            if (arr[j] > arr[j + 1]) {

                // Menukar elemen jika tidak dalam urutan yang benar

                int temp = arr[j];

                arr[j] = arr[j + 1];

                arr[j + 1] = temp;

            }

        }

    }

}

 

// Fungsi untuk mencetak array

void printArray(int arr[], int n) {

    for (int i = 0; i < n; i++) {

        cout << arr[i] << " ";

    }

    cout << endl;

}

 

// Fungsi utama

int main() {

    int arr[] = {64, 34, 25, 12, 22, 11, 90};

    int n = sizeof(arr) / sizeof(arr[0]);

 

    cout << "Array sebelum diurutkan: ";

    printArray(arr, n);

 

    bubbleSort(arr, n);

 

    cout << "Array setelah diurutkan: ";

    printArray(arr, n);

 

    return 0;

}


Penjelasan Program

  1. Deklarasi Array: Array arr[] diinisialisasi dengan beberapa nilai yang belum terurut.
  2. Fungsi bubbleSort:
    • Fungsi ini menggunakan dua loop for:
      • Loop pertama untuk menentukan jumlah iterasi.
      • Loop kedua untuk membandingkan dan menukar elemen jika elemen di posisi kiri lebih besar dari elemen di posisi kanan.
    • Setelah setiap iterasi, elemen terbesar "menggelembung" (bubble up) ke posisi terakhir.
  3. Fungsi printArray: Fungsi ini digunakan untuk mencetak elemen dalam array sebelum dan sesudah diurutkan.
  4. Output: Program mencetak array sebelum dan setelah diurutkan menggunakan algoritma Bubble Sort.

Output Program

Jika kode di atas dijalankan, hasilnya adalah sebagai berikut:

Array sebelum diurutkan: 64 34 25 12 22 11 90

Array setelah diurutkan: 11 12 22 25 34 64 90


Kelebihan dan Kekurangan Bubble Sort

Kelebihan:

  • Mudah dipahami dan diimplementasikan.
  • Cocok untuk array kecil atau data yang hampir terurut.

Kekurangan:

  • Tidak efisien untuk data yang besar karena kompleksitas waktu sebesar O(n2)O(n^2).

Dengan memahami program ini, Anda bisa mempelajari cara kerja dasar algoritma pengurutan dan mengembangkannya lebih lanjut untuk kasus yang lebih kompleks. Semoga bermanfaat! 😊

 

Next Post Previous Post
No Comment
Add Comment
comment url