1.Bubble Sort

Bubble sort adalah sebuah metode pengurutan dari sebuah data terkecil ke data terbesar ataupun dengan cara membandingkan ke sebuah elemen kesatu dengan elemen yang berikutnya.
Diberi julukan “Bubble”  dikarenakan proses pengurutan secara bergantian bergerak dan atau berpindah ke tempat yang tepat, seperti sebuah gelembung yang akan keluar dari sebuah wadahnya.

  1. Bubble Sort mensortir sebuah data dengan cara membandingkan elemen pertama dengan elemen selanjutnya.
  2. Jika elemen pertama melebihi besar dari elemen yang berikutnya maka  kedua elemen tadi akan ditukar.
  3. Jika elemen pertama lebih kecil dari elemen yang berikutnya, maka  kedua elemen tadi akan ditukar.
  4. Algoritma ini seperti menggeser suatu elemen secara satu per satu, dari yang paling kanan hingga ke kiri atau sebaliknya, tergantung daari jenis algoritmanya, asc atau desc.
  5. Apabila satu proses telah berhasil, maka bubble sort akan mencoba mengulangi prosesnya demikian seterusnya sampai  sebanyak n-1.
  6. Bubble sort akan terhenti apabila seluruh array telah diperiksa lalu tidak  ada pertukaran sebuah elemen yang bisa dilakukan, serta telah selesainya pengurutan yang diinginkan.  
Mengerti masalah :

Mengurutkan bilangan : menginputkan nilai ke program yang dibuat dan bila akan di urutkan nilai yang di masukan besar maka nilai nya akan naik sementara nilai yang di masukan kecil maka nilainya akan turun. ini lah metode menggunakan bubble sort .
Tentukan input dan output :

4 8 1 4 5 2 3 ------>> 1 2 3 4 4 5 8

Algoritma subprogram  :


Deklarasi
       larik = Array [1..100] of integer
       i ,array : 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




 Program c++ :


#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

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

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

void buble(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 data[8]={4,8,1,4,5,2,3},n=7;
    cetak_data(data,n);
    buble(data,n);
    cout<<endl<<endl;
    cetak_data(data,n);
}



2. Selection Sort
rikanursita.blogspot.com

3. Insert Selection Sort
hariadianto.blogspot.com
Previous
Next Post »
Copyright © 2015 Bettong'rs All Right Reserved
Created by Arlina Design Powered by Blogger