在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
class Solution {
public:
bool Find(vector<vector<int> > array,int target) {
bool found=false;
int i=0;
int rows=array.size();
if(rows>0)
{
int columns=array[0].size();
int j=columns-1;
while(i<rows&&j>=0)
// for(vector<vector<int>>::size_type i=0;i<array.size();)
// for(vector<int>::size_type j=array[i].size()-1;j>=0;)
{
if(array[i][j]==target){
found=true;
break;
}
else if(array[i][j]>target)
--j;
else
++i;
}
}
return found;
}
};
《剑指offer》P47