Anda di halaman 1dari 15

Tugas Desain dan Analisis

Algorithm

Sisca Cahya Puspita


192410103009

Kelas B
1. Terdapat baris bilangan Un = 1, -2, 3, -4, 5, -6, …

i. Buat fungsi iteratif untuk menghitung Un


ii. Tentukan metrik untuk ukuran inputnya
iii.Tentukan basic operation nya
iv. Jelaskan apakah untuk input yang ukuran nya sama banyaknya eksekusi basic operation bisa berbeda.
Apakah diperlukan analisa best case, worst case, dan average case?
v. Jika banyaknya eksekusi basic operation untuk input berukuran n dinyatakan sebagai C(n) , persamaan
deret untuk C(n)
vi. Persamaan langsung C(n)
i. Fungsi iteratif iii. Basic operation
Algorithm barisU(n)
//algoritma baris minus untuk menghitung Basic operation berasal dari operasi terdalam algoritma
//Un : n, -n ini,dimana modulu dari i ialah i%2. Setiap looping yang terjadi
//input : n akan melakukan operasi tersebut.
//Output : Un
for i ← 1 to n do
if i % 2 = 0
i == -i
return i

ii. Metrik input iv. Base, Worst, Avarage Case


Untuk algoritma ini, tidak membutuhkan analisa best case,
Inputan disini adalah n. n memiliki peran untuk menentukan worst case, dan average case. Algorithm barisU(n) mempunyai
batas akhir algoritma ini. Nilai n merupakan metrik untuk 1 nilai return, proses eksekusi akan dilakukan dari awal hingga
ukuran input n dari algoritma.
v. Persamaan deret untuk C(n)
Persamaan yang menghitung hasil  dari banyaknya eksekusi basic
operation atau berapa kali masuk loop ialah

vi. Persamaan langsung C(n)


 Rumus untuk persamaan langsung C(n) atau rumus langsung total
banyaknya eksekusi basic operation
2. algorithm uniqueElement

i. Tentukan metrik input untuk ukuran inputnya


ii. Tentukan basic operation nya
iii. Jelaskan apakah untuk input yang ukuran nya sama banyaknya eksekusi basic operation bisa berbeda.
Apakah diperlukan analisa best case, worst case, dan average case?
iv. Jika banyaknya eksekusi basic operation untuk input berukuran n dinyatakan sebagai C(n) , persamaan
deret untuk C(n)
v. Persamaan langsung C(n)
vi. Estimasi waktu (t) proses eksekusi
Algorithm uniqueElement
//memeriksa apakah setiap elemen A unik
//input : array A[0..n-1]
//output : mengembalikan true jika setiap elemen A unik dan false jika
terdapat beberapa elemen yang nilainya sama
for i ← 0 to n - 2 do
for j ← 1+i to n - 1 do
if A[i] = A[j] return false
i == -i
return true
i. Metrik input iii. Best, Worst, Average Case

Algorithm uniqueElement membutuhkan input array A dan algorithm uniqueElement membutuhkan analisa best case,
metrik inputnya adalah n. n sendiri ialah panjang dari array worst case, dan average case. Mengapa? Karena algorithm
uniqueElement mempunyai >1 return, lalu hal itu bergantung
pada ditemukan/tidak elemen yang mempunyai nilai sama.
ii. Basic operation

Basic operation algorithm uniqueElement ialah A[i] = A[j].


Operasi A[i] = A[j] akan mengalami proses terkeksekusi
looping algoritma.
v. Persamaan langsung C(n)
 
a. Best case

1

Pada  best case, looping dilakukan hanya 1 kali dan sudah
c. Avarage case
mencapai tujuan

  b. Worst case
Pada average case, looping dilakukan sebanyak n kali, tetapi
n bukan 1, bukan juga n
Pada worst case, looping dilakukan sampai akhir dari perulangan
yang ada dan sudah mencapai tujuan
vi. Estimasi waktu eksekusi

a. Best case ●  

b. Worst case

c. Average case
3. Algorithm matriksDuaDimensi

Suatu matriks 2 dimensi akan dicek apakah memiliki elemen dimana A[i,j] = A[j,i]
i. Buat fungsi iteratif untuk mengecek kondisi tersebut
ii. Tentukan metrik untuk ukuran inputnya
iii. Tentukan basic operation nya
iv. Jelaskan apakah untuk input yang ukuran nya sama banyaknya eksekusi basic operation bisa berbeda.
Apakah diperlukan analisa best case, worst case, dan average case?
v. Jika banyaknya eksekusi basic operation untuk input berukuran n dinyatakan sebagai C(n) , persamaan
deret untuk C(n)
vi. Cari persamaan langsung C(n)
algorithm matriksDuaDimensi
//algoritma untuk memeriksa matriks dua dimensi
//mempunyai elemen A[i,j] = A[j,i]
//input : A[[0..n-1],[0..n-1]]
//output : true or false
for i ← 1 to n - 2 do
for j ← 1+i to n - 1 do
if A[i,j] = A[j,i]
return true
return false
ii. Metriks input iv. Best, Worst, Average Case
Algorithm matriksDuaDimensi memerlukan input array A.
Lalu metrik inputnya ialah n. n itu sendiri ialah panjang dari algorithm matriksDuaDimensi membutuhkan analisa best
array case, worst case, dan average case. Mengapa? Karena dalam
algorithm matriksDuaDimensi mempunyai >1 return, lalu hal
itu bergantung pada ditemukan/tidak elemen yang
mempunyai nilai sama.
iii. Basic operation

Basic operation algorithm matriksDuaDimensi ialah A[i,j] =


A[j,i]. Operasi A[i,j] = A[j,i] akan mengalami proses
terkeksekusi looping algoritma.
v. Persamaan deret C(n)
 
a. Best case

1

Pada  best case, looping dilakukan hanya 1 kali dan sudah c. Avarage case
mencapai tujuan

Pada average case, looping dilakukan sebanyak n kali, tetapi


  b. Worst case n bukan 1, bukan juga n

Pada worst case, looping dilakukan sampai akhir dari perulangan


yang ada dan sudah mencapai tujuan
vi. Persamaan langsung C(n)
 
  a. Best case
c. Avarage case
1
Pada best case, looping dilakukan hanya 1 kali dan sudah
mencapai tujuan

  b. Worst case
Pada average case, looping dilakukan sebanyak n kali, tetapi
n bukan 1, bukan juga n

Pada worst case, looping dilakukan sampai akhir dari perulangan


yang ada dan sudah mencapai tujuan
Thanks!
CREDITS
: This pres
template w entation
as created
including i by Slidesg
co o,
infographic ns by Flaticon, and
s & image
s by Freep
ik.

Anda mungkin juga menyukai