<?php';/**二分查詢:查詢乙個值在陣列中的位置
* @$arr:操作的陣列,前提是按順序排列
* @$val:查詢的值
* @$start:查詢的起始位置,預設從陣列的第乙個數找起
* @$end:查詢的結束位置**/
function binarysearch($arr, $val, $end, $start=0)
elseif($arr[$mid] > $val
)else
}return -1; //
這裡的-1,是表示如果不在陣列範圍的時候,所返回的值
}header('content-type:text/html; charset=utf-8'); //
產生乙個陣列
$arr = range(10,20);
echo '';
print_r($arr
);echo '
$start = 0;
$end = count($arr) - 1;
$findval = rand(10,20 );
$index = binarysearch($arr, $findval, $end, $start
);printf("查詢的值 '%d' 在陣列中的下標 '%s'", $findval, $index
);?>
php二分查詢
target要查詢的值 左 右指示符 left,right用來維持查詢空間的指標 中間指示符 mid 用來應用條件來確定我們應該向左查詢還是向右查詢的索引 from leetcode function binsearch arr,target elseif arr mid target elseif...
PHP 順序查詢 二分查詢
1 查詢的方法 順序查詢 二分法 2 順序查詢 對某個陣列,按照順序,乙個乙個比較,找到你要的資料。3 順序查詢例項 順序查詢陣列中某個數 如從乙個陣列中找到乙個數 34 arr array 23,45,67,34,9,34,6 如果查到則輸出下標,否則輸出查無此數 arr array 23,45,...
php 排序,二分查詢
arr array 4,3,0,9,2,98,1,6,34 arr quicksort arr binnerysearch arr,90,0,count arr 1 function bubblesort arr for i 0 i count i return arr function quick...