Procedure
BinarySearch (Input nama_array : tipe_array)
{I.S. : elemen array yang terurut secara ascending sudah terdefinisi}
{F.S. : menampilkan data yg dicari ditemukan atau tidak ditemukan}
Kamus:
Ia, Ib, k : integer
ketemu : boolean
data_cari : tipedata
Algoritma:
input(data_cari) (1)
Ia = 1 (1)
Ib = maks_array (1)
ketemu := false (1)
while (not ketemu) and (Ia ≤ Ib) do (n)
k = (Ia + Ib) div 2 (1)
if (nama_var_array[k] = data_cari) (1)
then
ketemu = true (1)
else (or)
if (nama_var_array[k] < data_cari) (1)
then
Ia = k + 1 (1)
else (or)
Ib = k – 1 (1)
endif
endif
endwhile
{I.S. : elemen array yang terurut secara ascending sudah terdefinisi}
{F.S. : menampilkan data yg dicari ditemukan atau tidak ditemukan}
Kamus:
Ia, Ib, k : integer
ketemu : boolean
data_cari : tipedata
Algoritma:
input(data_cari) (1)
Ia = 1 (1)
Ib = maks_array (1)
ketemu := false (1)
while (not ketemu) and (Ia ≤ Ib) do (n)
k = (Ia + Ib) div 2 (1)
if (nama_var_array[k] = data_cari) (1)
then
ketemu = true (1)
else (or)
if (nama_var_array[k] < data_cari) (1)
then
Ia = k + 1 (1)
else (or)
Ib = k – 1 (1)
endif
endif
endwhile
|
Tmin(n)
|
4
|
|
Tmax(n)
|
n
|
|
Tavg(n)
|
4+...+n(3+) ≈ n
n
|
Tidak ada komentar:
Posting Komentar