//一個二維數組,已知裏面的一維數組長度都一樣,且是從左到右遞增,從上到下遞增。這時給一個數字n求這個n所在的位置寫一個算法。
$arr = array(
array(1,2,3,4),
array(2,3,4,5),
);
find_n($arr,5);
function find_n($arr,$n){
$i = count($arr)-1;
$j = 0;
while($i>=0&&$j<count($arr[0])){
if($n>$arr[$i][$j]){
$j++;
}else if($n<$arr[$i][$j]){
$i--;
}else{
echo 'i:'.$i.'=== j:'.$j;
return;
}
}
}