Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

1 Nama Kelompok : Doddy Setiawan Moh. Abdul Latief Yosep Pangky ALGORITMA MERGE SORT.

Presentasi serupa


Presentasi berjudul: "1 Nama Kelompok : Doddy Setiawan Moh. Abdul Latief Yosep Pangky ALGORITMA MERGE SORT."— Transcript presentasi:

1 1 Nama Kelompok : Doddy Setiawan Moh. Abdul Latief Yosep Pangky ALGORITMA MERGE SORT

2 Merge sort merupakan algoritma pengurutan dalam ilmu komputer yang dirancang untuk memenuhi kebutuhan pengurutan atas suatu rangkaian data yang tidak memungkinkan untuk ditampung dalam memori komputer karena jumlahnya yang terlalu besar. Algoritma ini ditemukan oleh John von Neumann pada tahun ilmu komputerilmu komputer 2

3 Prinsip utama yang diimplementasikan pada algoritma merge-sort seringkali disebut sebagai pecah-belah dan taklukkan (bahasa Inggris: divide and conquer). Cara kerja algoritma merge sort adalah membagi larik data yang diberikan menjadi dua bagian yang lebih kecil. Kedua larik yang baru tersebut kemudian akan diurutkan secara terpisah. Setelah kedua buah list tersusun, maka akan dibentuk larik baru sebagai hasil penggabungan dari dua buah larik sebelumnya. bahasa Inggrislarikbahasa Inggrislarik 3

4 4 VISUALISASI MERGE SORT

5 5 procedure MergeSort(input/output A : TabelInt, input i, j : integer) { Mengurutkan tabel A[i..j] dengan algoritma Merge Sort Masukan: Tabel A dengan n elemen Keluaran: Tabel A yang terurut }Deklarasi: k : integer Algoritma: if i 1) k ← (i+j) div 2 k ← (i+j) div 2 MergeSort(A, i, k) MergeSort(A, i, k) MergeSort(A, k+1, j) MergeSort(A, k+1, j) Merge(A, i, k, j) Merge(A, i, k, j)endif ALGORITMA MERGE SORT

6 6 procedure Merge(input/outputA : TabelInt, input kiri,tengah,kanan : integer) { Menggabung tabel A[kiri..tengah] dan tabel A[tengah+1..kanan] menjadi tabel A[kiri..kanan] yang terurut menaik. Masukan: A[kiri..tengah] dan tabel A[tengah+1..kanan] yang sudah terurut menaik. Keluaran: A[kiri..kanan] yang terurut menaik. } Deklarasi B : TabelInt i, kidal1, kidal2 : integer Algoritma: kidal1 ← kiri { A[kiri.. tengah] } kidal2 ← tengah + 1 { A[tengah+1.. kanan] } i ← kiri while (kidal1 ≤ tengah) and (kidal2 ≤ kanan) do if A kidal1 < A kidal2 then B i ← A kidal1 kidal1 ← kidal1 + 1 else B i ← A kidal2 kidal2 ← kidal2 + 1 endif i ← i + 1 endwhile { kidal1 > tengah or kidal2 > kanan }

7 7 { salin sisa A bagian kiri ke B, jika ada } while (kidal1 ≤ tengah) do B i ← A kidal1 kidal1 ← kidal1 + 1 i ← i + 1 endwhile { kidal1 > tengah } { salin sisa A bagian kanan ke B, jika ada } while (kidal2 ≤ kanan) do B i ← A kidal2 kidal2 ← kidal2 + 1 i ← i + 1 endwhile { kidal2 > kanan } { salin kembali elemen-elemen tabel B ke A } for i ← kiri to kanan do A i ← B i endfor { diperoleh tabel A yang terurut membesar }

8 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+4) div 2 = 2 2 k=1

9 merge B  COPY 217

10 merge 217 B  COPY

11 merge 217 B  COPY

12 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+4) div 2 = k=1

13 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+4) div 2 = MERGE B 

14 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+4) div 2 = B  COPY

15 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+4) div 2 = B  COPY

16 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+4) div 2 = B  COPY

17 k=(i+j) div 2 k=(1+7) div 2 = MERGE B 

18 k=(i+j) div 2 k=(1+7) div 2 = MERGE 2 B 

19 k=(i+j) div 2 k=(1+7) div 2 = MERGE 26 B 

20 k=(i+j) div 2 k=(1+7) div 2 = MERGE B  COPY

21 k=(i+j) div 2 k=(1+7) div 2 = MERGE B  COPY

22 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+3) div 2 = 2 49 k=1

23 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+3) div 2 = 2 49 MERGE B  49 COPY

24 k=(i+j) div 2 k=(1+7) div 2 = k=(i+j) div 2 k=(1+3) div 2 = 2 11 MERGE B  4

25 k=(i+j) div 2 k=(1+7) div 2 = B  COPY

26 MERGE B  2

27 B  24

28 B  246

29 B  2469

30 B 

31 COPY 1714 B 

32 COPY 1714 B 

33 JADI SETELAH DIURUTKAN HASILNYA ADALAH


Download ppt "1 Nama Kelompok : Doddy Setiawan Moh. Abdul Latief Yosep Pangky ALGORITMA MERGE SORT."

Presentasi serupa


Iklan oleh Google