Lompat ke konten Lompat ke sidebar Lompat ke footer

Widget Atas Posting

Program Buble Sort dalam Bahasa C

Algoritma Pengurutan Data Buble Sort dalam Bahasa C
hobingoding.com - Halo coders. Buble Sort merupakan salah satu dari beberapa teknik pengurutan data yang ada untuk saat ini. Buble Sort juga bisa dikatakan sebagai teknik pengurutan yang termasuk ke dalam teknik pengurutan tertua karena menjadi salah satu teknik pengurutan yang pertama kali ditemukan.

Sederhananya cara kerja dari algoritma Buble Sort ini adalah dengan membandingkan sebuah data dengan data yang ada di sebelahnya lalu kemudian menukarkannya jika data yang disebelahnya tersebut lebih kecil / lebih besar secara terus menerus hingga semua data yang bersebelahan sudah memenuhi kondisi pengurutan.

Semisal sebagai contoh terdapat data 4 1 3 dan kita akan urutkan secara askending. Pertama sekali data 4 akan dibandingkan dengan data 1, karena 4 > 1 maka tukar posisi 1 dan 4 sehingga urutannya menjadi 1 4 3. Kemudian bandingkan lagi data 4 dan data 3, karena 4 > 3 maka tukar kembali posisi 4 dan 3 sehingga urutannya menjadi 1 3 4.


Permasalahan

Buatlah program untuk melakukan pengurutan sebanyak n data secara askending dengan menggunakan teknik buble sort.

Test Case

Input Banyak Data: 8
Data yang Belum Berurut: 10 5 8 12 15 22 24 18
Hasil Pengurutan Data: 5 8 10 12 15 18 22 24

Kode Program

#include <stdio.h>
//source code by hobingoding.com

int main(){
    int banyakData, i, j;

    printf("Pengurutan Data dengan Algoritma Insertion Sort\n");
    printf("source code by hobingoding.com\n");
    printf("\nInput Banyak Data \t: ");
    scanf("%d", &banyakData);
    int data[banyakData];

    //Perulangan untuk menginput data sebanyak n
    printf("Data yang Belum Berurut : ");
    for(i = 0; i < banyakData; i++)
    {
        scanf("%d", &data[i]);
    }

    //Algoritma Buble Sort
    for(i = 0; i < banyakData; i++)
    {
        for(j = 0; j < banyakData-i-1; j++)
        {
            if(data[j] > data[j+1])
            {
                int tmp = data[j];
                data[j] = data[j+1];
                data[j+1] = tmp;
            }
        }
    }

    //Pencetakan data yang sudah diurutkan
    printf("Hasil Pengurutan Data   : ");
    for (i = 0; i < banyakData; i++)
    {
        printf("%d ", data[i]);
    }
    printf("\n");

    getch();
    return 0;
}

Output Program

Pengurutan Data dengan Algoritma Buble Sort Bahasa C

Penjelasan Program

Pertama sekali saya disini mendeklarasikan beberapa variabel-variabel yang akan saya gunakan nantinya yaitu banyakData, i dan j bertipe integer. Selanjutnya saya akan meminta masukan (banyakData) dari user yang dimana nilai yang diinput oleh user ini nantinya akan dipergunakan dalam menentukan ukuran array data.

Kemudian saya membuatkan sebuah perulangan untuk melakukan pengimputan data-data ke dalam array yang telah saya buatkan sebelumnya.

Lalu saya membuatkan dua perulangan lagi yang dimana kedua perulangan ini saya pergunakan untuk melakukan algoritma Buble Sort dimana di dalam kedua perulangan ini terdapat sebuah pengecekan kondisi untuk melakukan pertukaran data sesuai dengan urutan yang diinginkan (askending / deskending).

Terakhir data dalam array data tersebut yang sudah terurut saya cetak kembali dengan membuatkan perulangan sebanyak banyakData yang tersedia.
Fandi Presly Simamora
Fandi Presly Simamora Don't think too long because the chance can't waiting for you.

Posting Komentar untuk "Program Buble Sort dalam Bahasa C"

Berlangganan via Email