題目:在一個二維數組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。
分析:從左至右遞增、從上至下在遞增
可以以左下角的那個元素爲起點,指定個元素與其相比較,做相應移動
class Solution {
public:
bool Find(int target, vector<vector<int> > array) {
int rowcount = array.size();
int colcount = array[0].size();
int i,j;
for(i= rowcount -1,j=0;i>=0&&j<colcount;)
{
if(target == array[i][j])
{
return true;
}
else if(target > array[i][j])
{
j++;
continue;
}
else if(target < array[i][j])
{
i--;
continue;
}
}
return false;
}
};