剑指offer1-二维数组中的查找
题目描述
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
const Find = (target, array) => {
for(let i = array.length - 1, j = 0; i >= 0 && j < array[0].length;){
if(target === array[i][j]) return true;
if(target > array[i][j]){
j++;
continue;
}
if(target < array[i][j]){
i--;
continue;
}
}
return false;
}
本题类型:数组、查找
解析:
查找的起始点是左下角,右边的数都比它大,上边的数都比它小。要注意增加continue在符合判断条件时跳入下一次循环。