0
点赞
收藏
分享

微信扫一扫

NC29 二维数组中的查找

NC29 二维数组中的查找_一维数组
描述
在一个二维数组array中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
[
[1,2,8,9],
[2,4,9,12],
[4,7,10,13],
[6,8,11,15]
]
给定 target = 7,返回 true。

给定 target = 3,返回 false。

NC29 二维数组中的查找_排序算法_02

进阶:空间复杂度 O(1)O(1) ,时间复杂度 O(n+m)O(n+m)
示例1

输入:
7,[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]
返回值:
true
说明:
存在7,返回true

示例2

输入:
1,[[2]]
返回值:
false

示例3

输入:
3,[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]
返回值:
false
说明:
不存在3,返回false

Code:

class Solution {
public:
bool Find(int target, vector<vector<int> > array) {
for(int i=0;i<array.size();i++)
{
vector<int> subvec=array[i];
for(int j=0;j<subvec.size();j++)
{
vector<int>::iterator it=find(subvec.begin(),subvec.end(),target);
if(it!=subvec.end())
return true;
}
}
return false;
}
};


举报

相关推荐

0 条评论