1___二维数组中的查找
题目描述:
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
解决代码:
public class Solution { //思路:从左下角开始找: //比该元素大,往右找,比该元素小,往上找。 public boolean Find(int target, int [][] array) { int rows=array.length; int cols=array[0].length; int i; int j; boolean flag=false; for(i=rows-1,j=0;i>=0&&j<cols;){ if(array[i][j]==target){ flag=true; break; } if(array[i][j]<target){ j++; continue; } if(array[i][j]>target){ i--; continue; } } return flag; } } //array.length; 计算的是二维数组的行数 //array[0].length; 计算的是二维数组的列数