临近找工作,刷刷编程题。不求把leetcode的600多题全刷完,先刷一部分具有代表性的。此博客纯属日志。
题目:
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
答:
class Solution {
public:
bool Find(int target, vector<vector<int> > array) {
int column=array.size();
int row=array[0].size();
int i=0;
int j=0;
for( i=0;i<column;i++)
{
for( j=0;j<row;j++)
{
if (target==array[i][j])
{
return true;
}
else if((j==row-1)&&(i==column-1))//关键:到最后一个时,还没有查到对应的target
{
return false;
}
else
{
continue;
}
}
}
return false;//因为是个bool型的函数,所以不管怎样都要return一个东西的,最好return false,因为不知道程序好坏的情况下,false会安全一些吧。
}
};