二維數組中的查找 題目描述 在一個二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。 實現代碼 思路 矩陣是有序的,從左下角來看,向上數字遞減,向右數字遞增, 因此從左下角開始查找,當要查找 ...
二維數組中的查找
題目描述
在一個二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。
實現代碼
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
}
思路
矩陣是有序的,從左下角來看,向上數字遞減,向右數字遞增, 因此從左下角開始查找,當要查找數字比左下角數字大時,右移;要查找數字比左下角數字小時,上移。