Selasa, 11 November 2014

Quick Sort

Nama : Akmal Alfarisi
Kelas : 1IA17
NPM : 50414710
Mata Kuliah : Algoritma & Pemrograman 1A
Dosen : Kunto Bayu A,ST


Pada pembahasan kali saya akan menjelaskan khusus tentang Quick Sort.

Sebelumnya saya akan menjelaskan sedikit tentang Quick Sort.

Metode quick sort adalah suatu metode pengurutan yang menggunakan partisi.

Pada metode ini, data dibagi menjadi dua bagian, yaitu :
     1.    Data Kiri
     2.    Data Kanan

Untuk memulai mengurutkan data pada Quick Sort diberikan beberapa prosedur, yaitu :
     1.    Tentukan dahulu unsur elemen  pivot (data  tengah)
     2.    Membaca data dari ujung kanan ke kiri sampai ditemukan data yang lebih kecil dari pivot (partisi kiri), lalu membaca data dari ujung kiri ke kanan sampai ditemukan data lebih besar sama dengan pivot (partisi kanan)
     3.    Setelah kedua data telah ditemukan lalu kita tukarkan kedua data tersebut
     4.    Ulangi proses sampai seluruh data terbagi dua, dimana bagian kiri yang lebih kecil.

Contoh :

Diberikan data : 5 6 2 4 8 1 3 7

Disini saya menggunakan data 4 sebagai pivot

5 6 2 4 8 1 3 7

Kemudian kita membaca data dari kanan ke kiri dan kiri ke kanan sampai ditemukan data yang lebih kecil di kanan dan lebih besar di kiri

Disini saya menemukan data pertama yang lebih kecil di sebelah kanan yaitu :  3 dan data pertama yang lebih besar di sebelah kiri yaitu : 5

5 6 2 4 8 1 3 7

Lalu kita tukarkan kedua data tersebut dan urutan data menjadi :

3 6 2 4 8 1 5 7

Kita ulangi lagi prosesnya, dengan masih menggunakan pivot 4

3 6 2 4 8 1 5 7

Lalu kita tukarkan kedua data tersebut dan urutan data menjadi :

3 1 2 4 8 6 5 7

Setelah diperoleh data di sebelah kiri yang lebih kecil dari pivot dan data di sebelah kanan yang lebih besar sama dengan pivot maka kita bisa melakukan pengurutan pada data kiri dan kanan

Diperoleh :
Data Kiri : 3 1 2
Data Kanan :  4 8 6 5 7

Pada data kiri kita partisikan lagi dengan pivot 1

3 1 2 4 8 6 5 7

Menjadi : 2 1 3 4 8 6 5 7

2 1 3 4 8 6 5 7

1 2 3 4 8 6 5 7

Disini data yang lebih lebih di sebelah kiri pivot tidak ada maka yang ditukar adalah pivot itu sendiri dengan data yang lebih besar di sebelah kanannya.

Pengurutan pada data kiri selesai, kita lanjut ke data kanan.

1 2 3 4 8 6 5 7

Dengan pivotnya adalah 6

1 2 3 4 8 6 5 7

1 2 3 4 8 6 5 7

1 2 3 4 5 6 8 7

Karena data yang sudah terurut sudah mencapai 1 2 3 4 5 6 tinggal data 8 dan 7 lagi yang belum terurut

Maka sub data kanan yaitu 6 8 7 dipartisi lagi dengan pivot 8

1 2 3 4 5 6 8 7

Karena data yang lebih besar di sebelah kiri tidak ada makan yang ditukarkan adalah pivot itu sendiri dengan data yang lebih kecil di sebelah kanan yaitu 7

1 2 3 4 5 6 8 7

1 2 3 4 5 6 7 8

Data setelah pengurutan menjadi :

1 2 3 4 5 6 7 8

0 komentar:

Posting Komentar