Selain dengan menggunakan metode
‘Penyisipan Langsung (Straight Insertion Sort)’, kita juga dapat menggunakan
metode ‘Penukaran (Exchange Selection)’ atau yang lebih kita kenal dengan
istilah metode ‘Gelembung (Bubble Sort)’.
Metode ‘Bubble Sort’ merupakan
metode pertama yang paling banyak dipelajari oleh programmer. Karena lebih
sederhana. Akan tetapi ‘Bubble Sort’ sendiri memiliki kelemahan/kekurangan.
Seperti :
- ‘Bubble Sort’ tidak efisien dan menyita lebih banyak
waktu prosessor dibandingkan dengan metode sorting yang lain.
- Penggunaan ‘Bubble Sort’ masih dapat terlihat baik jika
jumlah data/elemen yang di inputkan tidak lebih dari 30 atau kurang dari
30 elemen.
Metode gelembung / penukaran adalah
metode yang mendasarkan penukaran 2 buah elemen untuk mencapai keadaan urut
yang diinginkan.
Berikut ini adalah contoh program
dengan menggunakan metode ‘Bubble Sort’ :
#include<stdio.h>
void tampilkan_larik(int data[],int n)
{
int i;
for(i=0 ; i<n; i++)
printf(" %d",data[i]);
printf ("\n");
}
void bubble_sort (int data[],int n)
{
int tahap, j, tmp;
for(tahap = 1; tahap < n; tahap++)
{
for(j=0; j < n-tahap; j++)
if(data[j] > data[j+1])
{
tmp =
data[j];
data[j] =
data[j+1];
data[j+1] =
tmp;
}
printf
("Hasil tahap %d:", tahap);
tampilkan_larik (data,n);
}
}
int main()
{
const JUM_DATA=10;
int i;
int data[] = {12,15,4,25,45,10,19,9,32,33};
bubble_sort (data, JUM_DATA);
printf ("hasil
pengurutan:\n");
tampilkan_larik (data, JUM_DATA);
return 0;
}
Dari Syntax program di atas, akan menghasilkan
output seperti gambar di bawah ini:
Title : Metode Bubble Sort
Description : Selain dengan menggunakan metode ‘Penyisipan Langsung (Straight Insertion Sort)’, kita juga dapat menggunakan metode ‘Penukaran (Exchange ...