• Tidak ada hasil yang ditemukan

Handout TIF207 Ch 4 Decrease and Conquer

N/A
N/A
Protected

Academic year: 2017

Membagikan "Handout TIF207 Ch 4 Decrease and Conquer"

Copied!
7
0
0

Teks penuh

(1)

1-1

Analisis Algoritma:

Fakultas Teknologi dan Desain Program Studi Teknik Informatika

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

Bab 4: Decrease-and-Conquer

Agenda.

• Definition

• Three Major Varian of Decrease-and-Conquer

• Insertion Sort

• Topological Sort

Analisis Algoritma | 2

Definition

Decrease-and-conquer, sebuah teknik yang berdasar pada relasi antara solusi untuk suatu kasus dan solusi untuk bagian yang lebih kecil dari kasus tersebut.

• Pendekatan yang digunakan: top-down-approach atau bottom-up-approach(incremental approach)

• 3 bentuk variasi dari teknik decrease-and-conquer:

1. decrease by constant; 2. decrease by constant factor; 3. variable size decrease

Three Major Varian of Decrease-and-Conquer

Decrease by Constant Variation.

• Ukuran kasus diperkecil (reduce) dengan nilai konstanta yang sama pada setiap iterasi sebuah algoritma.

• Pada umumnya nilai konstantanya adalah 1.

Contoh kasus: Decrease by constant. 89 12 57 8 16 25 11

(2)

Latihan 1.

Kasus: Decrease by constant.

U –N –I –V –E –R –S –I –T –A –S Problem 1: Tunjukkan penerapan decrease-by-constant untuk mengurutkan alphabet acak di atas menggunakan metode selection sort!

Analisis Algoritma | 5

Three Major Varian of Decrease-and-Conquer

Three Major Varian of Decrease-and-Conquer

Insertion Sort.

• Insertion sort menggunakan metode deacrese-by-constant untuk melakukan proses pengurutan suatu deret.

Contoh kasus: Insertion sort.

Problem: Tentukan prosedur pengurutan deret secara ascending menggunakan metode sorting insertion sort!

Analisis Algoritma | 6

Insertion Sort

Latihan 2. Kasus: Insertion Sort

Problem: Urutkan deret bilangan di bawah ini menggunakan metode

sorting insertion sort!

89 12 57 16 25 11 75

Decrease by a Constant Factor Variation.

• Ukuran kasus diperkecil (reduce) dengan nilai faktor konstanta yang sama pada setiap iterasi sebuah algoritma.

• Pada umumnya nilai faktor konstantanya adalah 2.

• Beberapa algoritma variasi decrese-and-conquer ini adalah:

• binary search; dan • russian peasant multification.

(3)

Three Major Varian of Decrease-and-Conquer

Decrease by a Constant Factor Variation.

Binary Search.

• Binary search adalah sebuah algoritma yang digunakan untuk mencari nilai tertentu, baik pada suatu deret bilangan yang acak atau telah terurut. • Contoh kasus: Prosedur pencarian bilangan sembarang tertentu.

Problem: Tentukan prosedur untuk melakukan pencarian suatu bilangan pada suatu deret terurut tertentu.

Analisis Algoritma | 9 1-10

Analisis Algoritma:

Fakultas Teknologi dan Desain Program Studi Teknik Informatika

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

Three Major Varian of Decrease-and-Conquer

Latihan 3.

Kasus: Pencarian bilangan tertentu sembarang.

12 20 34 41 80 89 100

Problem 1: Tentukan pseudocode untuk melakukan pencarian bilangan 80 pada deret terurut diatas.

Three Major Varian of Decrease-and-Conquer

Russian Peasant Multiplication.

• Russian peasant multiplication adalah algoritma yang digunakan untuk mencari hasil perkalian 2 buah bilangan bulat positif, baik bilangan positif genap maupun ganjil.

• Terdapat 2 formula yang digunakan dalam algoritma ini berdasarkan jenis bilangan :

(4)

Three Major Varian of Decrease-and-Conquer

Jika merupakan bilangan ganjil

Contoh kasus: Russian peasant multiplication. 50 * 65

Problem: Selesaikan operasi perkalian diatas menggunakan algoritma russian peasant multiplication.

Analisis Algoritma | 13

Three Major Varian of Decrease-and-Conquer

Analisis Algoritma | 14

Three Major Varian of Decrease-and-Conquer

Variable Size Deacrease Variation.

• Ukuran kasus berkurang (size-reduction) dari operasi algoritma sebelumnya.

• Algoritma yang menggunakan varian decrese-and-conquer ini

adalah Euclid’s algorithm.

� , = � ,

Topological Sorting

Topological sorting (toposort):“merupakan suatu urutan linear

setiap simpul dimana setiap yang saling terhubung secara langsung (direct), simpul muncul sebelum simpul dalam

suatu urutan.”

• Topological sorting menerapkan algoritma traversal yang diterapkan pada metode searching DFS (depth first search) dan disajikan dalam bentuk digraph/direct graph.

(5)

Topological Sorting

• Adjacency matrix, menggambarkan hubungan antar simpul dalam bentuk matriks.

• Adjacency list, menggambarkan hubungan antar simpul yang diwakili oleh edge.

• Adjacency matrixdan adjacency list merupakan dasar dari algoritma DFS untuk digraph.

Penerapan algoritma DFS untuk graph pada umumnya dalam bentuk stack penelusuran dan pohon DFS.

Analisis Algoritma | 17

Topological Sorting

Contoh digraph.

Analisis Algoritma | 18

Gambar digraph disamping dapat diuraikan menjadi:

tree edges (ab, bc, de)back edges (ba)forward edges (ac)cross edges(dc)

Topological Sorting

Contoh kasus: DFS algorithm

Problem 1: Tentukan adjacency matrix, adjacency list dan stack penelusuran graph di atas!

d c

Problem: Tentukan pohon DFS, adjacency matrix dan adjacency list 2 buah graph di bawah ini!

(6)

Topological Sorting

Problem 2: Terapkan algoritma DFS pada graph di bawah ini untuk menentukan stack penelusuran dan pohon DFS!

Analisis Algoritma | 21

f a

d c d e

b

Pada digraph, algoritma DFS digunakan untuk menentukan stack penelusuran (traversal stack) untuk menentukan popping-order.

• Popping-orderdigunakan untuk menentukan topological sorting yang dihasilkan.

Contoh kasus: Topology sorting &

source-removel algorithm

Problem: Tentukan topology sorted list digraph di samping!

Topological Sorting

Analisis Algoritma | 22

Topological Sorting

Contoh kasus: Topology sorting & source-removel algorithm Problem 1: Tentukan topology sorted list

digraph di samping! 1). DFS

2). popping-off order

Problem 2: Dengan menerapkan algoritma source-removel algorithm, urutkan simpul-simpul tersebut!

Topological Sorting

Latihan 4.

(7)

1-25

Analisis Algoritma:

Referensi

Dokumen terkait

Memberikan dasar yang kuat bagi tim audit dalam memberikan pendapat atas laporan keuangan dengan mempertimbangkan risiko salah saji yang terkait dengan risiko kegagalan,

Untuk mengetahui permasalahan yang mempengaruhi tingkat pelayanan. Untuk membandingkan tingkat pelayanan yang telah

Pastinya ada sebab yang membuat para alumni ini menjadi berubah dalam berperilaku.Pola perilaku berpacaran alumni santri yang dilakukan oleh alumni santri ini telah

Merujuk pada pemikiran Sardar (1998: 87) menegaskan bahwa epistemologi Islam berpijak pada totalitas pengalaman, kenyataan, dan menganjurkan banyak cara untuk

Selain itu terdapat sejumlah definisi rule yang merupakan implementasi dari PET dan yang menghasilkan buku yang akan disarankan ke pengguna2. Conflict resolution yang digunakan

batang tubuh ilmu yang khusus; (3) jabatan yang memerlukan persiapan dan latihan yang lama; (4) jabatan yang memerlukan latihan dalam jabatan

Berdasarkan hasil penelitian yang hasil wawancara dan pendapat dari beberapa sumber selama penelitian dan pihak lain yang terkait dengan masalah penelitian dapat disimpulkan bahwa

Hasil penelitian adalah produk berpotensi menjadi produk unggulan UMKM sektor industri agro Kabupaten Bogor, yaitu minuman sari pala.. Implikasi penelitian ini adalah (1) menetapkan