animasi bergerak gif
My Widget
Hai MBLO!

Jumat, 13 Mei 2016

Sorting (Bubble Sort)

 Diberi nama "Bubble" karena proses pengurutan secara berangsur-angsur bergera/berpindah ke posisi yang tepat, bila akan di urutkan nilai yang besar yang akan naik sementara nilai yang kecil turun. Setiap data (misalnya data pertama) akan di bandingkan dengan data yang ada di sebelahnya (dari data kedua sampai selesai).



Algoritma :


Procedure Bubble_Sort (input/output x : larik, input n : byte)

Deklarasi : 

       larik = array [1..100] of integer
       i, a : byte
       k : larik
       j, bantu : integer

Deskripsi : 

       for i <-- 1 to n-1 do

          for j <-- i+1 to n do

             if x[i] > x[j] then

                tukar(x[i], x[j])

             endif

          endfor
   endfor
Flowchat menggunakan aplkasi Raptor :  



Outputnya : 

  
 Program menggunakan Dev C++ :

#include <iostream>
#include <cstdlib>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

using namespace std;

void baca_data(int A[], int n) { 
int i;
for (i = 0; i < n; i++){
cout<<"Data ke-" <<i+1<< " : ";
cin>>A[i];
}
}

void cetak_data(const int A[], int n) {
int i;
for (i = 0; i < n; i++)
cout<<A[i]<< " ";
cout<<"\n";
}

void tukar (int *a, int *b){
int temp;
temp = *a;
*a = *b;
*b = temp;
}

void buble_sort (int x[], int n){
int i, j;
for (i = 0; i<n-1; i++)
for (j = i+1; j<n; j++)
if (x[i] > x[j]) tukar(&x[i], &x[j]);
}

int main(int argc, char** argv) {
int data[10], n;
cout<<"Banyak data : ";
cin>>n;
baca_data(data,n);
cetak_data(data,n);
buble_sort(data,n);
cetak_data(data,n);

return 0;
}

Outputnya :


Pada materi Insertion Sort bisa dilihat di blog teman kelompok saya pada Link Delav
Pada materi Selection Sort bisa dilihat di blog teman kelompok saya pada

Tidak ada komentar:

Posting Komentar