當前位置:才華齋>計算機>php語言>

php教程:二維陣列二分查詢需找陣列中某一元素下標

php語言 閱讀(2.69W)
php教程:二維陣列二分查詢需找陣列中某一元素下標
  成功不是將來才有的,而是從決定去做的'那一刻起,持續累積而成。以下本站小編整理的在PHP中二維陣列二分查詢需找陣列中某一元素下標,希望對大家有所幫助,更多資訊請關注應屆畢業生網!  如果你的陣列有特殊性:陣列元素大小有序排序,這樣的話,你應該用二分查詢,因為它快速高效,特地寫了一段如下:  /**  * 二分法尋找陣列下標  *@blog   */  function binarySearch($array,$value){  //起始位置,你可以作為函式引數  $low = 0;  $high = count($array)-1;  while($low <= $high){  $mid = ceil(($low+$high)/2);  if($array[$mid] == $value)  return $mid;  if($array[$mid] < $value){  $low = $mid + 1;  }  if($array[$mid] > $value){  $high = $mid - 1;  }  }  return -1;  }  //this is a test  $a = array(1,3,5,7,8,12);  echo binarySearch($a,8); //4  ?>  其實PHP中有個很好用的函式叫array_search()$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');$key = array_search('green', $array);echo $key; //2  ?>  很輕鬆就返回陣列下標了!