Contoh Program Sederhana ‘bubble sort’
Bubble sort merupakan variasi dari selection sort tapi dengan menggunakan cara berbeda untuk mencari data terkecil. Setiap pengulangan meletakkan data terkecil pada tempat yang sesuai, tetapi juga membuat perubahan pada posisi data-data yang lain pada array. Iterasi pertama akan menempatkan data terkecil pada array di posisi 0. Dimulai dari elemen pada posisi ke N, bandingkan 2 elemen berikutnya, tukarkan bila elemen sesudahnya lebih kecil dari elemen sebelumnya. Cara ini menyebabkan data terkecil “bubble” ke posisi array yang lebih kecil. Iterasi kedua akan meletakkan data terkecil pada array yang belum terurut ke posisi 1, dan seterusnya.
Berikut contoh Program Sederhana ‘bubble sort’. Disini saya menggunakan tools Borland C++ 5.02.
Script :
/*contoh program sederhana bubble sort*/
#include “stdio.h”
#include “conio.h”
#include “stdlib.h”
void swap(int &x, int &y);
void bubble_sort(int Array[], int &awal, int &akhir);
void main ()
{
int i, aw, ak, jumdata;
int data[9] = {2,4,6,5,1,7,0,3,8};
aw = 0;
jumdata = sizeof (data) / sizeof (int);
ak = jumdata-1;
printf(“Pengurutan data dengan Bubble Sort\n”);
printf(“\n Sebelum diurutkan :”);
for(i=0; i<jumdata;i++)
printf(“%5d”, data[i]);
bubble_sort(data,aw,ak);
printf(“\n Sesudah diurutkan :”);
for(i=0;i<jumdata;i++)
printf(“%5d”,data[i]);
getch();
_exit(0);
}
void bubble_sort(int Array[], int &awal, int &akhir)
{
int i,j,temp;
i=awal;
while (i<akhir) { j=akhir; while(j>i)
{
if(Array[j]<Array[j-i])
{
swap(Array[j-i], Array[j]);
}
j–;
}
i++;
}
}
void swap(int &x, int &y)
{
int temp;
temp = x;
x = y;
y = temp;
}
Output :
Selamat mencoba. Semoga bermanfaat. Tuhan memberkati. 🙂
terimakasih gan informasinya
oke gan.. semoga bermanfaat. 🙂