Codingan C++ Algoritma Sorting Bubble Sort,Insertion Sort,Selection Sort,Merge Sort,Quick Sort

Hi guys, kali ini kita ada tugas untuk membuat codingan pengurutan dengan algoritma Bubble Sort, Insertion Sort,Selection Sort,Merge Sort dan Quick Sort. berikut ini saya share codingan algoritma dengan penjelasan coding itu sendiri.

1. Bubble Sort

Bubble = busa/udara dalam air –apa yang terjadi?Busa dalam air akan naik ke atas. Mengapa?
Ketika busa naik ke atas, maka air yang di atasnya akan turun memenuhi tempat bekas busa tersebut.

Pada setiap iterasi, bandingkan elemen dengan sebelahnya: yang busa naik, yang air turun!
Tehnik Sort yg bekerja dgn menggunakan prinsip gelembung (bubble) udara yg akan bergerak naik ke atas secara satuper satu.


Prinsip Kerja dari Bubble Sort adalah :
1.Pengecekan mulai dari data ke-1 sampai  data ke-n
2.Bandingkan data ke-n dengan data sebelumnya (n-1)
3.Jika lebih kecil maka pindahkan bilangan tersebut dengan bilangan yg ada didepannya     ( sebelumnya  ) satu persatu  (n-1,n-2,n-3,....dst)
4.Jika lebih besar maka tidak terjadi pemindahan
5.Ulangi langkah 2 dan 3 s/d sort optimal.


Codingan :



2. Selection Sort

Kondisi awal:Unsorted list = data
Sorted list = kosong

Ambil yang terbaik (select) dari unsorted list, tambahkandi belakang sorted list.
Lakukan terus sampai unsorted list habis.
Tehnik pengurutan dgn cara pemilihan elemen atau proses kerja  dgn memilih elemen data terkecil utk kemudian dibandingkan & ditukarkan dgn elemen pd data awal, dst s/d seluruh elemen shg akan menghasilkan pola data yg telah disort.

Prinsip Kerja dari Teknik Selection Sort ini adalah :


  1. Pengecekan dimulai data ke-1 sampai dengan data ke-n
  2. Tentukan bilangan dengan Index terkecil dari data bilangan tersebut
  3. Tukar bilangan dengan Index terkecil tersebut dengan bilangan  pertama ( I = 1 ) dari data bilangan tersebut
  4. Lakukan langkah 2 dan 3 untuk bilangan berikutnya ( I= I+1 ) sampai didapatkan urutan yg optimal.



    Codingan


    3. Insertion Sort

    Kondisi awal:Unsorted list = data
    Sorted list = kosong

    Ambil sembarangelemen dari unsorted list, sisipkan (insert) pada posisi yang benar dalam sorted list.
    Lakukan terus sampai unsorted list habis.
    Bayangkan anda mengurutkan kartu.

    Prinsip dasar Insertion adalah secara berulang-ulang menyisipkan / memasukan setiap elemen. ke dalam posisinya / tempatnya yg benar


    Prinsip Kerja Insertion Sort adalah 
    1. Pengecekan mulai dari data ke-1 sampai  data ke-n 
    2. Bandingkan data ke-I ( I = data ke-2 s/d data ke-n )
    3. Bandingkan data ke-I tersebut dengan data sebelumnya (I-1), Jika lebih kecil maka data tersebut dapat disisipkan ke data awal sesuai dgn posisisi yg seharusnya
    4. Lakukan langkah 2 dan 3 untuk bilangan berikutnya ( I= I+1 ) sampai didapatkan urutan yg optimal.



    Codingan


    4. Merge Sort

    Prinsip Kerja Merge Sort adalah :

    1. Kelompokan deret bilangan kedalam 2 bagian, 4 bagian, 8 bagian, ......dst    (2n)
    2. Urutkan secara langsung bilangan dalam kelompok tsb.
    3. Lakukan langkah diatas untuk kondisi bilangan yg lain sampai didapatkan urutan yg optimal .



    Codingan

    5. Quick Sort



    Sort dgn iterasi secara urut dr posisi elemen 1, ke-2 dstnya.  Tukarkan setiap elemen pd posisi tsb dgn elemen lain yangg nilainya memang seharusnya berada pada posisi tersebut.

    Prinsip Kerja dari Quick Sort adalah :
    1. Tentukan Lower Bound (Batas Bawah) & Upper Bound (Batas Atas)
    2. Bandingkan Lower Bound (LB) dengan Upper Bound (UB)
    3. Jika LB>UB, Tukar (cari operasi perbandingan yang optimal/terkecil)
    4. Jika LB =< UB, maka Next Upper Bound & Lower Bound
    5. Ulangi langkah diatas s/d sort.




    Codingan

    Ok Guys Itu dya tadi adalah Codingan dan Algoritma Pengurutan dari Bubble Sort, Selection Sort, Insertion Sort, Merge Sort dan Quick Sort. Semoga Bermanfaat......!!!

    0 komentar:

    Copyright © 2012 Nugasoft Production.