自己做下记录。
题目:一个有序的二维数组,每行从左到右,每列从上到下,不断增加,查找某个数。
将查找目标 与 最右上角的值做比较,如果小于,则直接排除一列,如果大于,则排除当前行。
class Solution {
public:
bool Find(int target, vector<vector<int> > array) {
if(array.size()!=0)
{
// vector 二维数组 array.size() 获取行数
// array[0].size() 获取列数
int cow =0;
int col = array[0].size()-1;
while(cow<array.size()&&col>=0)
{
if(target==array[cow][col])
{
return true;
}
else if(target<array[cow][col])
{
col--;
}
else
{
cow++;
}
}
}
return false;
}
};