1.暴力查找
bool Find(int target, vector<vector<int> > array) {
vector<vector<int>>::iterator iter ;
vector<int>::iterator it;
for(iter = array.begin(); iter < array.end(); iter++)
{
for(it = (*iter).begin(); it<(*iter).end(); it++) //一维数组iter的值*iter
{
if(target == *it) //it的值等于target
return true;
}
}
return false;
}
2.根据题中给出的提示查找
bool Find(int target, vector<vector<int> > array) {
int m = array.size();
int n = array[0].size();
int r = 0,c = n-1; //右上角元素,这一行中最大的,这一列中最小的。
while(r<m &&c>=0)
{
if(array[r][c]==target)
return true;
else if(array[r][c]<target)
r++;//下一行
else
c--;//前一列
}
return false;
}