RosettaCodeData/Task/Binary-search/Mathematica/binary-search-2.math
2023-07-01 13:44:08 -04:00

10 lines
246 B
Text

BinarySearch[x_List, val_] := Module[{lo = 1, hi = Length@x, mid},
While[lo <= hi,
mid = lo + Round@((hi - lo)/2);
Which[x[[mid]] > val, hi = mid - 1,
x[[mid]] < val, lo = mid + 1,
True, Return[mid]
];
];
Return[-1];
]