Algoritma Greedy merupakan metode yang paling populer untuk memecahkan persoalan optimasi.
Persoalan optimasi (optimization problems): persoalan yang menuntut pencarian solusi optimum.
Persoalan optimasi hanya ada dua macam:
1 . Maksimasi (maximization)
2. Minimasi (minimization)
Solusi optimum (terbaik) adalah solusi yang bernilai minimum atau maksimum dari sekumpulan alternatif solusi yang mungkin.
Solusi yang memenuhi semua kendala disebut solusi layak (feasible solution). Solusi layak yang mengoptimumkan fungsi optimasi disebut solusi optimum.
MENGHITUNG GAJI PEGAWAI
algoritma gaji_pegawai
deklarasi
tjg, mk, gapok, gatot : real
deskripsi
input (mk, gapok)
if mk > 3 then
tjg ← 0.2 * gapok
else
tjg ← 0.1 * gapok
gatot ← gapok + tjg
write ('Gaji Total ',gatot)
Operasi yang diambil = * (perkalian)
Tmin(n) = 0
Tentukan Big O , Big Ω , Big Θ
Big O : T(n) = 0
T(n) ≤ Og(n)
0 ≤ n (untuk semua n ≥ 0)
C = 1 n0= 0
Big Ω : T(n) = 0
T(n) ≥ Ωg(n)
0 ≥ n (untuk semua n ≤ 0)
C = 1 n0= 0
Big Θ : C1g(n) = 0
C2g(n) = 0
C2g(n) ≤ t(n) ≤ C1g(n)
-1 ≤ 0 ≤ 1
C1 = -1, C2 = 1, n0= 0
Posted in
Analisis Algoritma
Kamus
n : integer
Algoritma
input n ← 10
Function faktorial ( input n = integer ) → real
kamus
fak :
real
i :
integer
Algoritma
if ( n = 0 ) or (n = 1)
then
faktorial ← 1
else
fak ← 1
for ← 2 to n do
fak ← fak * i
endfor
Faktorial ← fak
endif
endfunction
A.
Operasi Pengisian Nilai
SYNTAX
|
JUMLAH
|
N ¬ 10
|
1
|
Faktorial¬ 1
|
1
|
Fak¬ 1
|
1
|
Fak ¬ Fak*i
|
2N
|
Faktorial ¬ Fak
|
1
|
Total
|
4+ 2n
|
B.
Operasi Penjumlahan
SYNTAX
|
JUMLAH
|
Fak ¬
fak * i
|
N
|
Total
|
N
|
C.
Operasi Perulangan (Output)
SYNTAX
|
JUMLAH
|
Faktorial ¬ Fak
|
1
|
Total
|
1
|
Total kebutuhan waktu eksekusi algoritma HitungRata2 :
Total Waktu = t1 + t2 + t3 = ( 4 + 2n ) a + (n)b + c
Posted in
Analisis Algoritma
Kamus :
rusuk, panjang, tinggi, lebar, volume, luas_permukaan : integer
Menu1, Menu2 : Char
Menu, keluar : string
Algoritma:
output (' Menu Utama ')
output (' 1. Hitung Volume ')
output (' 2. Hitung Luas Permukaan ')
output (' 3. Keluar ')
input (' Menu ')
if (Menu=1)
Posted in
Analisis Algoritma
Kamus :
Luas, Keliling, Panjang, Lebar, Alas, Tinggi, Jari_Jari : integer
Menu2, Menu1 : Char
Menu, keluar : string
Algoritma:
output (' Menu Utama ')
output (' 1. Hitung Luas ')
output (' 2. Hitung Keliling ')
output (' 3. Keluar ')
input (' Menu ')
if (Menu=1)
Posted in
Analisis Algoritma
Procedure Isi_Matriks (
output M, N, x :
integer, A, B: matriks)
Kamus
i,j :
integer
Algoritma
output ('Matriks A')
input (M,N) {M : banyak baris, N: banyak kolom}
output ('Matriks B')
output (N) {banyak baris}
input (x) {banyak kolom}
output ('Matriks A')
for i ← 1
to M
do
for j ← 1
to N
do
input (A(i,j))
endfor
endfor
for i ← 1
to N
do
for j ← 1
to x
do
input (B(i,j))
endfor
endfor
endprocedure
A. Operasi Pengisian Nilai
|
SYNTAX
|
JUMLAH
|
|
M ¬ 5
|
1
|
|
N ¬ 5
|
1
|
|
For i ¬ 1
to M do
|
N
|
|
For i ¬ 1
to N do
|
N
|
|
Total
|
2 + 2n
|
B.
Operasi Penjumlahan
|
SYNTAX
|
JUMLAH
|
|
Tidak Ada
|
Tidak Ada
|
|
Total
|
Tidak Ada
|
C.
Operasi Perulangan (Output)
|
SYNTAX
|
JUMLAH
|
|
For i ¬ 1
to M do
|
N
|
|
For i ¬ 1
to N do
|
N
|
|
Total
|
2n
|
Total kebutuhan waktu eksekusi algoritma HitungRata2 :
Total Waktu = t1 + t2 + t3 = ( 2 + 2n ) a + b + ( 2n ) c
Posted in
Analisis Algoritma