25 T003474411
25 T003474411
Tahun : 2008
Pertemuan 25
MERANCANG ALGORITMA
DENGAN KOMPLEKSITAS TERTENTU
REVIEW (1)
• Pengenalan algoritma
• Komponen-komponen algoritma
– Perulangan
– Percabangan
– Modul
• Rekursif
• Induksi matematika
• Analisis algoritma
– Fungsi kompleksitas
• Abstract Data Type
– Stack
– Queue
• Priority Queue
– Tree
• Binary Tree
• Heap
– Graph
Bina Nusantara
REVIEW (2)
• Divide and Conquer
– Pengurutan
• Selection Sort
• Insertion Sort
• Buble Sort
• Merge Sort
• Quick Sort
– Pencarian
• Sequential Search
• Binary Search
• Metode Greedy
– Knapsack Problem
– Pengurutan jobs berdasar deadline
– Minimum Spanning Tree
– Shortest Path
Bina Nusantara
REVIEW (3)
• Dynamic Programming
– Fibonacci Sequence Problem
– Coin Change Problem
– Multistage Graph Problem
– Traveling Salesman Problem
– Knapsack Problem
• Code Optimization
• Huffman Code
• Graph Coloring
• Search Tree
– Tree Traversal
– Backtracking
– Branch and Bound
• Traveling Salesman Problem
Bina Nusantara
MEMBUAT PROGRAM KOMPUTER
• Meneliti masalah
– Jika masalah berupa sebuah soal, baca dan pahami soal dulu sebaik-baiknya
• Memahami masalah
• Membuat model masalah
• Merancang algoritma
• Membuat pseudocode
– Menterjemahkan pseudocode ke bahasa pemrograman
• Analisis algoritma
– Menghitung fungsi kompleksitas
– Menghitung Big-Oh
• Optimisasi algoritma
• Kompilasi
• Percobaan
• Implementasi
• Pelatihan bagi pengguna
• Perawatan
Bina Nusantara
KASUS 1
• Buatlah sebuah algoritma untuk menghitung jumlah
faktor pembagi bilangan N !
Bina Nusantara
TAHAP 1
• Pahami dulu soalnya !
Bina Nusantara
TAHAP 3
• Merancang algoritma
Bina Nusantara
TAHAP 4
• Analisis algoritma
Bina Nusantara