二維數(shù)組中的查找
題目描述
在一個二維數(shù)組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數(shù),輸入這樣的一個二維數(shù)組和一個整數(shù),判斷數(shù)組中是否含有該整數(shù)。
實現(xiàn)代碼
function Find(target, array)
{
var row = array.length;
var i = row-1;
var j = 0;
while( i>=0 && array[i][j]){
if (array[i][j]<target){
j++;
}
else if (array[i][j]>target) {
i--;
} else {
return true;
}
}
return false
}
思路
矩陣是有序的,從左下角來看,向上數(shù)字遞減,向右數(shù)字遞增, 因此從左下角開始查找,當要查找數(shù)字比左下角數(shù)字大時,右移;要查找數(shù)字比左下角數(shù)字小時,上移。