• Tidak ada hasil yang ditemukan

06 Merge - Quick Sort

N/A
N/A
Protected

Academic year: 2018

Membagikan "06 Merge - Quick Sort"

Copied!
27
0
0

Teks penuh

(1)

Algoritma Struktur Data

3 sks

(2)

Materi

Materi

Pengantar Struktur Data

Abstract Data Type (ADT)

Rekursif : Fibonacci

Sorting (Selection, Insertion, Bubble, Shell, Merge, Quick)

Struktur Data Linier (Linked List, Stack, Queu)

Struktur Data Hirarki (Tree, Graph, Hash Tables)

(3)

M erge Sort

M et ode ini sering digunakan pada

pengurut an berkas. M ula-mula diberikan

dua kumpulan dat a yang sudah dalam

keadaan t erurut . Kedua kumpulan dat a

t ersebut harus dijadikan sat u t abel

(4)

M erge Sort

(M etode Penggabungan)

Penggabungan ini digunakan pada pengurut an

berkas

Syarat nya ada dua kumpulan dat a yang sudah

dalam keadaan urut

Kedua kumpulan dat a t ersebut harus dijadikan sat u

t abel sehingga dalam keadaan urut

(5)

M erge Sort

(M etode Penggabungan)

(6)

M erge Sort

(M etode Penggabungan)

Proses pengurut an dengan met ode penggabungan

:

1. M ula-mula diambil dat a pert ama dari T1, 2, dan dat a

pert ama dari T2, yait u 3

2. Dat a ini dibandingkan, kemudian yang lebih kecil dilet akkan

sebagai dat a pert ama hasil hasil pengurut an, misalnya T3

3. Jadi T3 akan memiliki sat u dat a, yait u 2

4. Dat a yang lebih besar, yait u 3, kemudian dibandingkan

dengan dat a kedua dari T1, yait u 19

(7)

M erge Sort

Algorit manya sebagai berikut :

1. i  1

8. Jika (i > J) maka kerjakan baris 9, jika t idak dikerjakan baris 15 9. i  j

16. Selama (j <= J1) kerjakan baris 17 s.d. 19 17. J3  J3 + 1

(8)

Pengurutan M erge Sort

D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Ta h a p : 1

T1

2

1 9

2 6

4 4

6 5

T2

3

5

1 2

2 2

T3

2

Ta h a p : 2

T1

1 9

2 6

4 4

6 5

T2

3

5

1 2

2 2

(9)

Pengurutan M erge Sort

D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Ta h a p : 3

T1

1 9

2 6

4 4

6 5

T2

5

1 2

2 2

T3

2

3

5

Ta h a p : 4

T1

1 9

2 6

4 4

6 5

T2

1 2

2 2

(10)

Pengurutan M erge Sort

D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Ta h a p : 5

T1

1 9

2 6

4 4

6 5

T2

2 2

T3

2

3

5

1 2

1 9

Ta h a p : 6

T1

2 6

4 4

6 5

T2

(11)

Pengurutan M erge Sort

D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Ta h a p : 7

T1

4 4

6 5

T2

T3

2

3

5

1 2

1 9

2 2

2 6

4 4

Ak h ir

(12)
(13)

Quick Sort

M embandingkan suat u elemen (disebut pivot ) dengan

elemen yang lain dan menyusunnya sedemikian rupa

sehingga elemen-elemen lain yang lebih kecil daripada

pivot t ersebut t erlet ak di sebelah kirinya dan

elemen-elemen lain yang lebih besar daripada pivot t ersebut

t erlet ak di sebelah kanannya. Sehingga dengan demikian

t elah t erbent uk dua sublist , yang t erlet ak di sebelah kiri

dan kanan dari pivot . Lalu pada sublist kiri dan sublist

kanan kit a anggap sebuah list baru dan kit a lakukan

proses yang sama sepert i sebelumnya. Demikian

(14)

Quick Sort

(M etode Pengurutan Cepat)

Suat u met ode pengurut an yang membandingkan

suat u elemen (pivot ) dengan elemen yang lain dan

menyusunnya sedemikian rupa sehingga elemen

yang lain yang lebih kecil daripada pivot t erlet ak

disebelah kiri pivot sedangkan elemen yang lebih

besar dari pivot dilet akkan disebelah kanan pivot

(15)

Quick Sort

(M etode Pengurutan Cepat)

List yang sebelah kiri pivot juga dit erapkan at uran

sepert i pivot , yait u membandingkan elemen yang

lainnya lagi, kalau lebih kecil dilet akkan sebelah kiri,

kalau lebih besar dilet akkan disebelah kanan. Hal ini

juga berlaku unt uk list yang let aknya disebelah

kanan

Disebut juga dengan met ode part isi

Pada met ode quick jarak dari kedua elemen yang

(16)

Quick Sort

(M etode Pengurutan Cepat)

Proses pengurut an dengan met ode pengurut an

cepat :

1. Pilih dat a t ert ent u yang dinamakan pivot , misalnya

x.

2. Pivot ini harus dilet akkan pada posisi ke-j

sedemikian hingga dat a ant ara 1 s.d. (j-1) lebih kecil

daripada x, sedangkan dat a pada posisi ke (j+1) s.d.

N lebeih besar dari pada x

3. Cara pengat urannya adalah menukarkan dat a

(17)

Quick Sort

Algorit manya sebagai berikut :

1. x 

Dat a[(L+R)/ 2)]

(18)

Quick Sort

At au algorit manya yang lain mengat akan :

1. Tent ukan data-data yang akan diurut kan dan disimpan dalam array

2. Lakukan pengulangan dari data-data tersebut

3. Data-data yang ada dibagi menjadi 2 bagian dimana bagian yang sat u dengan yang lain dilakukan proses pengecekan

4. Pada bagian yang pertama, lakukan pembandingan antara data yang sat u dengan data yang lain, dimana kalau data yang sat u lebih kecil dari data yang lain, maka posisinya dit ukar. Kalau

datanya lebih kecil diletakkan disebelah kiri, kalai datanya lebih besar diletakkan disebelah kanan. Hal ini berlaku pada bagian yang kedua

5. Tampilkan data hasil pembandingan

(19)

Pengurutan Quick Sort

I t e r a si D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Aw a l 6 5 2 4 4 2 6 1 9 2 2 5 3 1 2

(20)

Pengurutan Quick Sort

I t e r a si D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Aw a l 2 1 2 4 4 2 6 1 9 2 2 5 3 6 5

(21)

Pengurutan Quick Sort

I t e r a si D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Aw a l 2 1 2 4 4 2 6 1 9 2 2 5 3 6 5

(22)

Pengurutan Quick Sort

I t e r a si D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Aw a l 2 1 2 4 4 2 6 1 9 2 2 5 3 6 5

(23)

Pengurutan Quick Sort

I t e r a si D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Aw a l 2 1 2 4 4 2 6 1 9 2 2 5 3 6 5

(24)
(25)

Pengurutan Quick Sort

I t e r a si D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

Aw a l 2 1 2 4 4 2 6 1 9 2 2 5 3 6 5

L= 8 , R= 9 2 3 5 1 2 1 9 2 2 2 6 4 4 6 5

I t e r a si D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a D a t a

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ]

(26)
(27)

Referensi

Dokumen terkait

Demikian biodata ini saya buat dengan sebenarnya untuk memenuhi salah satu persyaratan dalam pengajuan Hibah PKM Pengabdian Masyarakat dengan judul “ ENGLISH CAMP UNTUK PEDAGANG

Adapun fungsi-fungsi dari setiap rangkaian, seperti rangkaian Minimum Sistem Mikrokontroller ATMega 16 di gunakan sebagai control otak dari input menuju output yang

“Peria Pokak, apa kamu sudah tidak bisa membedakan mana kayu yang baik dan kayu yang jelek?” bentak seorang bibinya.... “Aku hanya mampu mencari kayu yang seperti ini, Bi, jadi,

Bagian Virologi, Departemen Ilmu Penyakit Hewan dan Kesehatan Masyarakat Veteriner, Fakultas Kedokteran Hewan, Universitas Nusa

“Tulisan ini menjelaskan tentang keberadaan perpustakaan di lembaga pendidikan Islam yang kondisinya masih banyak memprihatinkan, jika hal ini tidak dicarikan solusinya, maka

Tahap analisis morfologi pada preprocessing ini dilakukan dengan menerapkan sistem MorphInd sebagai penganalisis morfologi bahasa Indonesia yang akan

Konsekuensinya, perusahaan yang mempunyai respon sosial dalam hubungannya dengan pengungkapan tanggung jawab sosial seharusnya menyingkirkan seseorang yang tidak merespon

- Bagaimana Seharusnya Mengimplementasikan STRATEGI DIGITAL MARKETING di 2017 ini untuk Kesuksesan Bisnis atau Produk Anda - Bagaimana Eksplorasi CONSUMER BEHAVIOR lewat Media Online