|
binarySearch(A(1), value(0), low(0), high(0)) :=
|
|
let
|
|
mid := low + (high - low) / 2;
|
|
in
|
|
-1 when high < low //Not Found
|
|
else
|
|
binarySearch(A, value, low, mid - 1) when A[mid] > value
|
|
else
|
|
binarySearch(A, value, mid + 1, high) when A[mid] < value
|
|
else
|
|
mid;
|