Buatlah algoritma(kalimat deskriptif & flowchat & psedo code) binary seaching
Binary search adalah metode untuk menemukan suatu data dalam koleksi data dengan cara membagi koleksi data tersebut sama rata terus menerus hingga data ditemukan atau control field telah berseberangan.
Pertama-tama pastikan semua data sudah disusun teratur baik secara ascending atau descending. Selanjutnya set control field low pada data pertama, high pada data terakhir dan mid pada indeks (data pertama+data terakhir)/2. Jika data mid belum sama seperti data yang dicari pindahkan low ke sebelah kanan(+1) mid jika data yang dicari lebih besar daripada mid dan pindahkan high ke sebelah kiri(-1) mid jika data yang dicari lebih kecil daripada mid. Lalu kalkulasi ulang mid dan bandingkan kembali. Lakukan hal tersebut hingga data ditemukan atau nilai low > high.
Berikut Pseudocode dari Binary Search:
BEGIN
SET low = first index
SET high = last index
SET mid = (high+low)/2
DOWHILE low <= high AND isFound equals false
IF data(mid) equals searchKey THEN
SET isFound to true
ELSE
IF searchKey > data(mid) THEN
SET low = mid + 1
ELSE
SET high = mid – 1
ENDIF
mid = (high+low)/2
ENDIF
ENDDO
END