以函式實作時,虛擬碼如下所示:

# 在元素數為 N 的陣列 A 的區間 [0, N) 中尋找 key 的位置 
binarySearch(A, N, key):
    left ← 0
    right ← N  
    while left < right:
        mid ← (left + right)/2  # 找出中間值
        if  A[mid] = key:       # 比較搜尋範圍的中間值與目標值
            return mid
        elsif A[mid] < key:
            left ← mid + 1
        else
            right ← mid

    return NIL # 不存在