Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
6Activity
0 of .
Results for:
No results containing your search query
P. 1
Merge Sort

Merge Sort

Ratings: (0)|Views: 313 |Likes:

More info:

Categories:Types, Resumes & CVs
Published by: IvanZatriaExactautis on Oct 08, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

07/30/2014

pdf

text

original

 
 Algoritma & Struktur Data
Merge Sort and Solving Reccurence
 
Ivan Zatria
 H 121 11 902
 
1.
 
Merge-Sort
 
(contoh rekursif)
a.
 
Pengertian
 Merge Sort adalah sebuah algoritma pengurutan data yang ditemukan oleh John vonNeumann pada tahun 1945, algoritma ini merupakan bagian dari ilmu komputeryang dirancang untuk mengurutkan data yang jumlahnya sangat besar.[1]
b.
 
Algoritma
 Prinsip mendasar yang di gunakan pada algoritma merge sort sering disebut ataumengikuti pola pecah belah dan taklukan (divide and conquer).[2]
c.
 
Pola divide and Conquer
, adalah banyak diadopsi oleh beberapa alogirtma yangpada dasarnya mengimplementasikan konsep rekursi (adalah cara untukmenetapkan proses dengan dirinya sendiri) untuk memecahkan permasalahan.Caranya adalah permasalahan utama dipecah menjadi sub-masalah, kemudian solusidari sub masalah akan di gabungkan untuk mendapatkan solusi dari masalah utama.[3]
d.
 
Pada setiap tingkat rekursi pola tersebut terdiri atas 3 langkah :
 
 
Devide, yakni memilih masalah menjadi sub-masalah.
 
Conquer, yakni menyelesaikan sub-masalah tersebut secara rekursi.
 
Kombinasi/Penggabungan, menggabungkan solusi dari sub-masalah untukmendapatkan solusi dari masalah utama.Algoritma merge sort membagi tabel menjadi dua tabel yang sama besar. Masing-masingtabel diurutkan secara rekursif, dan kemudian digabungkan kembali untuk membentuk tabelyang terurut. Implementasi dasar dari algoritma merge sort memakai tiga buah tabel, duauntuk menyimpan elemen dari tabel yang telah di bagi dua dan satu untuk menyimpan elemenyang telah terurut. Namun algoritma ini dapat juga dilakukan langsung pada dua tabel, sehinggamenghemat ruang atau memori yang dibutuhkan.
 Contoh Program Merge Sort pada Java :
package merge_sort;public class Main {public static void main(String[] args) {int i;int array[] = {12,9,4,99,120,1,3,10};System.out.print("nilai sebelum:\n");for(i = 0; i < array.length; i++)System.out.print( array[i]+" ");System.out.println();mergeSort_srt(array,0, array.length-1);System.out.print("setelah sorting:\n");for(i = 0; i <array.length; i++)System.out.print(array[i]+" ");System.out.println();}
 
 public static void mergeSort_srt(int array[],int lo, int n){int low = lo;int high = n;if (low >= high) {return;}int middle = (low + high) / 2;mergeSort_srt(array, low, middle);mergeSort_srt(array, middle + 1, high);int end_low = middle;int start_high = middle + 1; while ((lo <= end_low) && (start_high <= high)) {if (array[low] < array[start_high]) {low++;} else {int Temp = array[start_high];for (int k = start_high- 1; k >= low; k--) {array[k+1] = array[k];}array[low] = Temp;low++;end_low++;start_high++;}}}}
 
berikut hasil pendeklarasiannya :
 
Divide
 –
Partisilah {12,9,4,99,120,1,3,10}
 
ke dalam dua buah subarray {12,9,4,99}
 
dan{120,1,3,10} sedemikian hingga tiap elemen pada tersebut
 
senantiasa lebih kecil atau samadengan subarray yang pertama
 
dan tiap elemen pada subarray yang kedua
 
senantiasa samaatau lebih besardari subarray yang pertama
 
Conquer
 –
Urutkan (sorting-lah) subarray yang pertama {12,9,4,99}
 
dan subarray yang kedua{120,1,3,10}
 
secara rekursif 

Activity (6)

You've already reviewed this. Edit your review.
1 thousand reads
1 hundred reads
Diah Intansari liked this
Aisha Aiz liked this
Ian Grunge liked this
Hary Ya liked this

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->