hile (i > 0 A[1] > key) while (i > 0 31 > 41) A[i + 1] key Output sementara: {31,41,26,35} for j 3 to length[4] key 26 i j 1 =2 while (i > 0 A[2] > key) while (i > 0 41 > 26) A[i + 1] A[i] ii1 Diuji lagi untuk A[1] {pernyataan bernilai benar} {A[3]=41} {i=1} i=1 {pernyataan bernilai salah} {A[2]=41}
while (I > 0 31 > 26) A[I + 1] A[i] II1 Diuji lagi untuk A[0] while (0 > 0 0 > 26) A[I + 1] key Output sementara: A:{26,31,41,35} for j 4 to length[4] key 35 I j 1 =3 while (I > 0 A[3] > key) while (I > 0 41 > 35) A[I + 1] A[i] II1
Diuji lagi untuk A[2] i=2 while (i > 0 31> 35) A[i + 1] key Jadi, didapat: A[1]:26 A[2]:31 A[3]:35 A[4]:41 {Pernyataan bernilai salah} {A[3]=35}
Kasus terbaik
T ( n ) k1 1 k 2 n k 3 ( k1 k 2 ) n ( k 3 k1 )
j 2
Laju waktu komputasi dalam fungsi linier Kasus terbaik (best case) akan terjadi bila data telah terurut, ti=1 karena hal tersebut tidak memerlukan proses running time yang terlalu lama sebab data yang diinput telah terurut (mudah membandingkan). Akibatnya proses perulangan tidak terlalu banyak digunakan yang tentunya mengalami proses yang lama. Rumus di atas dapat dijabarkan sebagai berikut:
T (n) k1 1 k 2 n k3
j 2
(k1 k 2 )n (k3 k1 )
Kasus terburuk:
T (n) k1 j k 2 n k3
j 2
k1 2 1 n ( 2 k1 k 2 )n (k3 k1 ) 2
Laju waktu komputasi dalam fungsi kuadratik Kasus terburuk (worst case) akan terjadi jika Input data terurut terbalik, tj = j. Hal tersebut membutuhkan proses running time yang lama karena perlu banyak proses perulangan dalam membandingkan isi data agar dapat mengurutkan dengan baik. dimana,
j
j 2
n(n 1) 1 2
T (n) k1 (
n(n 1) 1) k 2 n k 3 2
( ) ) ( ) ( )