Handout TIF207 Ch 5 Devide and Conquer

12/3/2015

Bab 5: Devide-and-Conquer

Analisis Algoritma:

Agenda.





Anany Levitin, Introduction to Design and Analysis of Algorithm, 3rd Edition,
Pearson Education, Inc., Addison-Wesley

Introduction
Mergesort
Quicksort
Binary Tree Traversals and Related Properties

Fakultas Teknologi dan Desain

1-1 Informatika
Program Studi Teknik

Analisis Algoritma |

Introduction

Mergesort
• Mergesort merupakan sebuah kasus yang cocok untuk penerapan
teknik devide-and-conquer.

Devide-and-conquer:
teknik yang digunakan dalam
perancangan algoritma yang
akan membagi ukuran (size)
problem utama menjadi 2
subproblem, mencari solusi
dari tiap subproblem,
kemudian menggabungkan
solusi kedua subproblem

tersebut sebagai solusi untuk
problem utama.
Analisis Algoritma |

2

• Mergesort diselesaikan dengan cara:
(1) membagi deret bilangan yang akan diurutkan menjadi 2 bagian;
(2) mencari deret urut setiap bagian; dan
(3) menggabungkan hasil deret urut kedua bagian tersebut.

3

Analisis Algoritma |

4

1

12/3/2015


Mergesort
• Contoh kasus: Mergesort (devide-and-conquer)

Mergesort
Latihan 1.

17 12 57 8 16 25

Kasus: Mergesort (devide-and-conquer).

Problem: Urutkan deret bilangan acak di atas menggunakan metode
mergesort yang mengakomodir algoritma devide-and-conquer!

21 5 9 16 30 7
Problem 1: Urutkan deret bilangan acak di atas menggunakan
metode mergesort yang mengakomodir algoritma devide-andconquer!

Analisis Algoritma |


5

Analisis Algoritma |

Quicksort
• Quicksort membagi deret bilangan yang akan diurutkan
berdasarkan nilainya, bukan berdasarkan letak/posisi elemen
deret bilangan.

6

Mergesort
Latihan 2.
Kasus: Quicksort (devide-and-conquer).

• Membutuhkan elemen yang digunakan sebagai elemen yang
membagi deret bilangan menjadi 2 bagian.
• Contoh kasus: Quicksort (devide-and-conquer) .

21 5 9 16 30 7

Problem 1: Urutkan deret bilangan acak di atas menggunakan metode
quicksort!

Problem: Urutkan deret bilangan di bawah ini menggunakan metode
quicksort!

17 12 57 8 16 25
Analisis Algoritma |

7

Analisis Algoritma |

8

2

12/3/2015

Binary Tree Traversals and Related Properties

• Binary tree adalah himpunan hingga simpul-simpul yang
memiliki sebuah root dan 2 subpohon, subpohon kiri (Tleft) dan
subpohon kanan (Tright).

Binary Tree Traversals and Related Properties
• Simpul yang digunakan dalam penyajian pohon biner terbagi atas
original nodes dan extension node.
• Original nodes (internal nodes) digambarkan dalam bentuk
lingkaran, sedangkan extension node (external nodes)
digambarkan dalam bentuk bujursangkar.
• Penggunaan simpul internal dan eksternal, pada umumnya
digunakan untuk merepresentasikan notasi aritmatika dalam
bentuk pohon biner.

Analisis Algoritma |

9

Binary Tree Traversals and Related Properties


Analisis Algoritma |

10

Binary Tree Traversals and Related Properties

• Algoritma yang paling penting dalam penerapan metode devideand-conquer pada pohon biner adalah: preorder , inorder , dan
postorder .
• Letak perbedaan tetiga algoritma tersebut adalah pada urutan
penelusuran root pohon.
• Contoh kasus: Binary tree.
Kasus: Tentukan urutan penelusuran pohon biner di bawah ini secara
preorder , inorder , dan postorder !
Analisis Algoritma |

11

Analisis Algoritma |

12


3

12/3/2015

Binary Tree Traversals and Related Properties

Analisis Algoritma:

Latihan 3.

Anany Levitin, Introduction to Design and Analysis of Algorithm, 3rd Edition,
Pearson Education, Inc., Addison-Wesley

Kasus: Binary tree.
Problem 1: Tentukan urutan
penelusuran pohon biner di samping
ini secara preorder , inorder , dan
postorder


Analisis Algoritma |

13

1-14

4