Anda di halaman 1dari 2

RESUME MATA KULIAH ALGORITMA DAN PEMROGRAMAN

NAMA : RAYHAND RAFAEL WONGADY SOSANG


NIM : H011181012
TUGAS 3
Pada pertemuan ini, kita mempelajari mengenai Analisis Algoritma. Kita akan
menganalisis waktu komputasi dari suatu algoritma, algortima yang akan kita analisis adalah
algoritma Insertion-Sort. Analisanya adalah sebagai berikut:
Insertion-Sort(A) Times T(n)
1 for j  2 to length[A] n

2 key  A[j] n–1


n–1
3 ij–1 𝑛
∑ 𝑡𝑗
4 while (i > 0  A[i] > key) 𝑗=2
𝑛
5 A[i + 1]  A[i] ∑
𝑗=2
(𝑡𝑗 − 1)

6 ii–1 ∑
𝑛
(𝑡𝑗 − 1)
𝑗=2
7 A[i + 1]  key n–1

Untuk menghitung waktu komputasi algoritma tersebut, maka kita menjumlahkan semua T(n)
n n n
T(n) = n  (n  1)  (n  1)   t j   (t j  1)   (t j  1)  (n  1)
j 2 j 2 j 2

Kemudian, dapat kita sederhanakan menjadi


n n
T(n) = 4n  3   t j  2 (t j  1)
j 2 j 2

n n n n
Selanjutnya,  (t j 1) dapat diubah menjadi
j 2
tj -
j 2
1 , maka akan menjadi
j 2
t
j 2
j  (n  1) .
Maka T(n) menjadi
n  n 
T(n) = 4n  3   t j  2  t j  (n  1) 
j 2  j 2 
n n
T(n) = 4n  3   t j  2 t j  2n  2
j 2 j 2

Kemudian kembali sederhanakan menjadi


n
T(n) = 2n  3 t j  1
j 2

n adalah banyaknya data. Sehingga ketika terdapat sebanyak 4 data, maka perintah for
akan terlaksanakan sebanyak 4 kali, yaitu 3 kali saat kondisinya terpenuhi dan 1 kali pada saat
kondisinya tak terpenuhi. Hal inilah yang menyebabkan perintah di bawahnya menjadi (n-1),
karena pada saat kondisi perintah for tidak terpenuhi, maka perintah di bawahnya tidak
dijalankan. tj adalah banyak perintah while dijalankan, hal ini dapat digambarkan sebagai
berikut:
misalnya kita memiliki 4 data untuk diurutkan

A: a b c d

Maka ketika algoritma Insertion-Sort dijalankan, maka perintah While akan berjalan sebanyak:

Max:
t2=2 t3=3 t4=4

A:
a b c d

Min:
t2=1 t3=1 t4=1

Maka,
 tj =1 adalah kasus terbaik/best case atau tj minimum. Kasus ini terjadi ketika semua data
telah terurut. Maka dengan menggunakan rumus T(n) akan didapatkan:
n
T(n) = 2n  31  1  5n  4
j 2

Laju waktu komputasi dalam fungsi linear.


 tj = j adalah kasus terburuk/worst case atau tj maksimum. Kasus ini terjadi ketika semua
data terurut terbalik. Maka dengan menggunakan rumus T(n) akan didapatkan :
n
3 2 7
T(n) = 2n  3 j  1  n  n4
j 2 2 2
Laju waktu komputasi dalam fungsi kuadratik.

Anda mungkin juga menyukai