BINARY_SEARCH(A,start,stop,key) if start > stop return -1 else mid ← (start+stop)/2 if A[mid] = key return mid else if A[mid] < key return BINARY_SEARCH(A,start,mid-1) else return BINARY_SEARCH(A,mid+1,stop)