MATERI 9-Intro NPC - 23 24
MATERI 9-Intro NPC - 23 24
Non-Polynomial Complete
(NPC)
MATERI
1. Pengantar Kompleksitas Algoritma.
• Peran Algoritma dalam Komputer
• Pengantar DAA.
• Growth of Functions + Notasi Asymptotic
2. Analisa Kompleksitas:
• Rekursif : Fibonacci
• Sorting: Selection Sort, Insertion Sort, Bubble Sort, Shell Sort, Merge Sort ,
Quick Sort , Heap sort, dec tree, counting Sort, Radix-Sort
• Searching: Sequential Search, Fibonacci Search, Interpolation Search,
Binary Search, Depth First Search (DFS), dan Breadth First Search (BFS).
3. Non-Polynomial Completeness (NPC) dan Non-Polynomial
Hardness (NPH) –Pspace
• Greedy Algorithm
• Dynamic Programming
• Knapsack Problem
• Travelling Salesman Problem
Pendahuluan
• Berdasarkan kebutuhan waktunya, algoritma untuk
menyelesaikan persoalan dapat dibagi menjadi dua
kelompok besar:
• 1. Algoritma waktu-polinom (polynomial-time algorithms)
• Termasuk : linier time
• 2. Algoritma waktu-non-polinom (Nonpolynomial-time
algorithms)
polynomial-time algorithms
• Polynomial-time algorithm adalah algoritma yang
kempleksitas waktu kasus-terburuknya dibatasi oleh fungsi
polinom terhadap ukuran masukannya (n).
T(n) = O(p(n)) → p(n) adalah polinom dari n
Contoh lain:
graph coloring,
sirkuit Hamilton,
partition problem,
bin packing problem,
integer linear programming
9
• kode program berikut Sedangkan program
i=0
while (true) {i = i + 1 } printf ("Hello World!“);
akan terus berulang tanpa berhenti berhenti dengan sangat cepat.
(infinite loop)
Sumber: Wikipedia.org
Algoritma Deterministik
• Algoritma deterministik adalah algoritma yang dapat
ditentukan dengan pasti apa saja yang akan dikerjakan
selanjutnya oleh algoritma tersebut.