Cara Kerja Algoritma Buble Sort Dan cara buat progam Buble Soprt dengan c++..Pada kali ini saya ingi Share Cara buat progam buble sort Dengan c++, pasti anda yang Anak TI mesti ada tugas di suruh buat Algoritma Buble Sort.
Menurut saya Algoritma buble Sort ini, Algoritma Sorting yang Efektif dan sanagt mudah di pelajari bagi pemula, Sebelum masuk ke Buble sort Apa itu Algoritma??
Jadi Algoritma Adalah Susunan logis dan sistematis yang di gunakan untuk memecahkan atau meneyelesaikan suatu Permasalahan Tertentu..
Apa itu Buble Sort ???
Buble sort adalah metode/algoritma pengurutan dengan cara melakukan penukaran data denagan tepat di sebelahnya secara terus menerus, Sampai di pastikan dalam sebuah Data yang mau di urutkan tidak ada Perubahan..
Jadi Bagaimana cara kerja Algoritma buble Sort ini
Dengan membanding kan data di sebelah nya..
Cara kerja Algoritma buble Sort
- Membandingkan Data ke-i denagn data i(i+1),Tepat di sebelahnya.. Jika tidak sesuai maka tukar (data ke-i = data ke-(i+1) dan data ke-(i+1) = data ke-i). Apa maksudnya tidak sesuai? Jika kita menginginkan algoritme menghasilkan data dengan urutan ascending (A-Z) kondisi tidak sesuai adalah data ke-i > data ke-i+1, dan sebaliknya untuk urutan descending (A-Z).
- Membandingkan data ke-(i+1) dengan data ke-(i+2). Kita melakukan pembandingan ini sampai data terakhir. Contoh: 1 dgn 2; 2 dgn 3; 3 dgn 4; 4 dgn 5 … ; n-1 dgn n.
- Selesai satu iterasi, adalah jika kita sudah selesai membandingkan antara (n-1) dgn n. Setelah selesai satu iterasi kita lanjutkan lagi iterasi berikutnya sesuai dengan aturan ke-1. mulai dari data ke-1 dgn data ke-2, dst.
- Proses akan berhenti jika tidak ada pertukaran dalam satu iterasi.
Berikut contoh progam sederhana Algoritma buble Sort Dengan Bahasa Pemprogaman C++ ACS/DSC
Buble Sort Pengurutan Ascending
#include
#include
using namespace std;
int data[10],data2[10];
int n;
void tukar(int a,int b) {
int t;
t = data[b];
data[b] = data[a];
data[a] = t;
}
void tampil() {
for(int i=0;i> n;
cout << "=================================" << endl;
for (int i = 0; i < n; i++)
{
cout << "Masukan Data Ke " << (1+i) << " = "; cin >> data[i];
data2[i] = data[i];
}
cout << "=================================" << endl;
cout << "= Proses Buble Sort =" << endl;
cout << "=================================" << endl;
cout << "sebelum di sorting" << endl;
// tampil
tampil();
cout << "=========================" << endl;
// Proses Buble sort nya
for (int i = 1; i < n; i++) {
for (int j = n-1; j >= i; j--) {
if (data[j] < data[j-1]) {
tukar(j,j-1);
}
tampil();
}
cout << "Langkah ke " << (i+0) << "" << endl;
cout << "==============" << endl;
for (int x = 0; x < n; x++) {
cout << data[x] << " ";
}
cout << "\n";
}
cout << "Setelah Di Sorting" << endl;
tampil();
cout << "\n";
getch();
cin.get();
return 0;
}
Buble sort Descending
#include
#include
using namespace std;
int data[10],data2[10];
int n;
void tukar(int a,int b) {
int t;
t = data[b];
data[b] = data[a];
data[a] = t;
}
void tampil() {
for(int i=0;i> n;
cout << "=================================" << endl;
for (int i = 0; i < n; i++)
{
cout << "Masukan Data Ke " << (1+i) << " = "; cin >> data[i];
data2[i] = data[i];
}
cout << "=================================" << endl;
cout << "= Proses Buble Sort =" << endl;
cout << "=================================" << endl;
cout << "sebelum di sorting" << endl;
// tampil
tampil();
cout << "=========================" << endl;
// Proses Buble sort nya
for (int i = 1; i < n; i++) {
for (int j = n-1; j >= i; j--) {
if (data[j] > data[j-1]) {
tukar(j,j-1);
}
tampil();
}
cout << "Langkah ke " << (i+0) << "" << endl;
cout << "==============" << endl;
for (int x = 0; x < n; x++) {
cout << data[x] << " ";
}
cout << "\n";
}
cout << "Setelah Di Sorting" << endl;
tampil();
cout << "\n";
getch();
cin.get();
return 0;
}
0 Comments