1.题目描述:
在一个二维数组中(每个一维数组的长度相同),如数组
1 2 3
4 5 6
7 8 9
每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
2.解题思路
-
选择右上角的数字作为开始点
-
如果array[row][col]>target,则向左查找,col–;
-
如果array[row][col]<target,则向下查找,row++;
3.代码
3.代码
public class Solution {
public boolean Find(int target, int [][] array) {
boolean res = false;
int row = 0;
int col = array[0].length-1;
while(row<=array.length-1&&col>=0){
if(array[row][col]>target){
col--;
}else if(array[row][col]<target){
row++;
}else{
res = true;
break;
}
}
return res;
}
}