【想努力学习】二维数组中的查找遇到的问题

题为二维数组中的查找
代码如下:
bool Find(int target, vector<vector<int> > array) {
int row = array.size();
int col = array[0].size();
int flag = 0;
for(int i = 0; i < row ; i++)
{
if(array[i][0]<=target && array[i][col-1]>=target)
{
for(int j = 0; j < col; j++)
{
if(array[i][j]==target)
flag = 1;
}
}
}
if(flag==1)
return 1;
else
return 0;
}
因为每一行和列都是有序的,所以我想比较头和尾,如果要找的答案在其中,那么我就在内部搜索
但是测试之后,他会报段错误,我不是很理解,望解答
#C/C++#
全部评论
array[0]可能会为Null,你判空一下
点赞 回复
分享
发布于 2019-02-14 23:25
而且你这么做复杂度是O(n*m)的吧。
点赞 回复
分享
发布于 2019-02-14 23:26
阅文集团
校招火热招聘中
官网直投

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务