-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path二维数组查找
36 lines (33 loc) · 1.04 KB
/
二维数组查找
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,
每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,
判断数组中是否含有该整数。
class Solution {
public:
bool Find(int target, vector<vector<int> > array) {
int len0 = array.size();
int len1 = array[0].size();
int found=0;
label:for(int i=0;i<len0;i++)
{
for(int j=len1-1;j>=0;j--)
{
if(target == array[i][j])
{
found+=1;
goto out;
}
if(target < array[i][j])
{
len1--;
goto label;
}
if(target > array[i][j])
{
break;
}
}
}
out:if(found==1) return true;
else return false;
}
};