eXorithm – Execute Algorithm: View / Run Algorithm binary_search

Logo Beta

function binary_search ($array$item$low$high

{

  if ($low==-1) $low = 0;

  if ($high==-1) $high = count$array)-1;

  

  if ($low > $high) {

    // item not found

    return -1;  

  }  

  

  // get the middle

  $middle = floor(($low$high)/2);

  if ( $array$middle] == $item ) {

    // found it

    return $middle

  } elseif ($item < $array$middle]) {

    // search left

    return binary_search$array$item$low$middle-1);

  } else {

    // search right

    return binary_search$array$item$middle+1, $high);

  }