1.
Program Algoritma Bubble Sort
Merupakan Program pengurutan secara berangsur-angsur
bergerak/berpindah ke posisi yang tepat.
#include<iostream>
using namespace std;
int main()
{ int i,a,c,d,g;
a=5;
int b[5];
cout<<"Nama : Lukman
Hakim"<<endl;
cout<<"NIM : 153040038"<<endl<<endl;
cout<<" ***BUBBLE SORT***
"<<endl;
cout<<" Mengurutkan nilai besar ke
kecil"<<endl<<endl;
for(i=0;i<a;i++)
{
cout<<"Masukkan
nilai "<<i+1<<"
: ";cin>>b[i];
}
for(i=0;i<a-1;i++)
{
for(d=i+1;d<a;d++)
{
c=i;
if(b[c]<b[d])
{
c=d;
}
g=b[c];
b[c]=b[i];
b[i]=g;
}
}
cout<<"Data
yang sudah diurutkan : ";
for(i=0;i<a;i++)
{
cout<<b[i]<<"
";
}
}
|
HASIL PROGRAM
Cara Kerja :
Bubble Sort mengurutkan data dengan cara membandingkan elemen sekarang dengan elemen berikutnya.Jika elemen sekarang lebih besar dari elemen selanjutnya maka akan lanjut ke proses mengeurutkan selanjutkan. Jika elemen sekarang lebih kecil dari elemen berikutnya maka kedua elemen tersebut ditukar. Algoritma ini seolah menggeser satu per satu elemen dari kanan ke kiri
Bubble Sort mengurutkan data dengan cara membandingkan elemen sekarang dengan elemen berikutnya.Jika elemen sekarang lebih besar dari elemen selanjutnya maka akan lanjut ke proses mengeurutkan selanjutkan. Jika elemen sekarang lebih kecil dari elemen berikutnya maka kedua elemen tersebut ditukar. Algoritma ini seolah menggeser satu per satu elemen dari kanan ke kiri
Contoh pengurutan data yang dilakukan dengan metode bubble sort :
Proses 1 :
72 3 8 1 12 // 73 > 3 ,lanjut
72 3 8
1 12 // 3 < 8 , tukar
72 8 3
1 12 // 3 > 1, lanjut
72 8 3 1 12 //
1 < 12, tukar
72 8 3
12 1 // Hasil Proses 1
|
Proses 2:
72 8 3 12 1 // 73 > 8, lanjut
72 8 3 12 1 // 8 > 3, lanjut
72 8 3 12
1 //
3 < 12, tukar
72 8 12 3
1 //3
> 1,lanjut
72 8 12
3 1 //
Hasil Proses 2
|
Proses 3:
72 8 12 3 1 //72 > 8,lanjut
72 8 12
3 1 //8 < 12, tukar
72 12 8
3 1 //8 > 3,lanjut
72 12 8 3 1 //3
> 1, lanjut
72 12 8
3 1 // SELESAI
|
Dari 3 Proses diatas dapat diperoleh urutan dari besar ke kecil yaitu 72 12
8 3 1, yang awalnya 72 3 8 1 12