Algoritma brute force adalah algoritma yang digunakan untuk memecahkan masalah secara
langsung berdasarkan pernyataan masalah (problem statement).
Contoh Soal 1:
Mencari bilangan terbesar (/ terkecil) dalam sebuah senarai (list/ array) (Bubble sort)
Penyelesaian dengan Algoritma Brute Force:
n ← length(S)
maks ← S0
for i ← 1 to n do
if Si > maks then
maks ← Si
endif
endfor
Kompleksitas pencarian bilangan terbesar/ terkecil dengan algoritma brute force adalah O(n)
Contoh Soal 2:
Mencari bilangan tertentu pada sebuah senarai (sequential search)
Penyelesaian dengan Algoritma Brute Force:
n ← length(S)
cari ← x
k←0
while (k < n) and (Sk != cari) do
k ← k+1
endwhile
if Sk == cari then
idx ← k
else then
idx ← 0
endif
Kompleksitas pencarian bilangan sequential search dengan algoritma brute force ini adalah O(n)
Karakteristik algoritma brute force adalah:
tidak cerdas, tidak mangkus (tidak efisien, lihat nilai kompleksitasnya)
disebut juga algoritma naif
sederhana dan mudah implementasinya
dapat menyelesaikan hampir semua masalah.
1
Contoh Soal 3:
Menghitung nilai faktorial, n! (n adalah bilangan bulat positif)
Penyelesaian dengan algoritma brute force:
faktorial ← 1
for i ← 1 to n do
faktorial ← faktorial * i
endfor
Kompleksitas algoritma brute force dalam perhitungan nilai faktorial adalah O(n)
Contoh Soal 4:
Perkalian 2 buah matriks n x m
Dimana: