Binary Search

Find the index of an element in a sorted array using binary search with O(log n) time complexity.

Code

Algorithms
$lo = 0; $hi = count($arr) - 1; $result = -1;
while ($lo <= $hi) {
    $mid = intdiv($lo + $hi, 2);
    if ($arr[$mid] === $target) { $result = $mid; break; }
    elseif ($arr[$mid] < $target) $lo = $mid + 1;
    else $hi = $mid - 1;
}
$result;

Parameters

Sorted array

Element to find

Server

More PHP Snippets