2013-04-10 12:38:42 -07:00
|
|
|
function binary_search_recursive(a, value, lo, hi) {
|
2015-11-18 06:14:39 +00:00
|
|
|
if (hi < lo) { return null; }
|
|
|
|
|
|
|
|
|
|
var mid = Math.floor((lo + hi) / 2);
|
|
|
|
|
|
|
|
|
|
if (a[mid] > value) {
|
|
|
|
|
return binary_search_recursive(a, value, lo, mid - 1);
|
|
|
|
|
}
|
|
|
|
|
if (a[mid] < value) {
|
|
|
|
|
return binary_search_recursive(a, value, mid + 1, hi);
|
|
|
|
|
}
|
|
|
|
|
return mid;
|
2013-04-10 12:38:42 -07:00
|
|
|
}
|