Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Desain dan Analisis Algoritma
Pertemuan 6 Brute Force
2
Salah satu teknik desain algoritma
Brute Force Salah satu teknik desain algoritma Brute force adalah sebuah pendekatan yang lempang (straightforward) untuk memecahkan suatu masalah, biasanya didasarkan pada pernyataan masalah (problem statement) dan definisi konsep yang dilibatkan. Algoritma brute force memecahkan masalah dengan sangat sederhana, langsung dan dengan cara yang jelas (obvious way).
3
Example Menghitung an (a > 0, n adalah bilangan bulat tak-negatif) an = a × a × … × a (sebanyak n kali), jika n > 0 = 1 , jika n = 0 Algoritma: kalikan 1 dengan a sebanyak n kali
4
Example Menghitung n! (n bilangan bulat tak-negatif) n! = 1 × 2 × 3 × … × n , jika n > 0 = 1 , jika n = 0 Algoritma: kalikan n buah bilangan, yaitu 1, 2, 3, …, n, bersama-sama
5
Brute Force Sorting Apa sorting itu? A0 ≤ A1 ≤ A2 ≤ … An-1 ≤ An
Perhatikan bahwa setelah sorting : A0 merupaka elemen dengan nilai terkecil A1 merupaka elemen dengan nilai terkecil setelah A0 … An merupaka elemen dengan nilai terbesar
6
Brute Force Sorting Dengan definisi di atas, susunlah algoritma brute force untuk mensorting A[0..n-1]
7
Brute Force Sorting
8
Selection Sort
9
Selection Sort Analisalah kompleksitas waktu selection sort Ө(n2)
10
Alternative Brute Force Sorting
Apa sorting itu? A0 ≤ A1 ≤ A2 ≤ … An-1 ≤ An Perhatikan bahwa setelah sorting : A0 ≤ A1 A1 ≤ A2 A2 ≤ A3 …
11
Bubble Sort Algorithm bubbleSort(A[0..n-1])
//mensorting array A menggunakan bubble sort //input : array A[0..n-1] //output : array A[0..n-1] dalam keadaan terurut naik for i ← 0 to n – 2 do for j ← 0 to n – 2 – i do if A[j + 1] < A[j] swap A[j] and A[j + 1]
12
Bubble Sort Analisalah kompleksitas waktu bubble sort Ө(n2)
13
Brute Force Rarely a source of clever or efficeient algorithm
BUT important algorithm design strategy Applicable to a very wide variety of problems Yields reasonable algorithms of at least some practical value with no limitation of instance size Expense of designing a more efficient algorithm may be unjustifiable if only a new instances of a problem need to be solved and a brute force algorithm can solve those instances with acceptable speed
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.