class Solution {
public:
bool searchArray(vector<vector<int>> array, int target) {
// 先判断是否为空
if (array.size() == 0 || array[0].size() == 0)
return false;
int i = 0, j = array[0].size() - 1;
while (array[i][j] != target)
{
// 比左上角大, target只能最后一列
if (target > array[i][j])
{
for (size_t k = i; k < array.size(); ++k)
{
if (array[k][j] == target)
return true;
}
return false;
}
// 比左上角小,最后一列排除
else if(target < array[i][j])
{
if (j > 0)
j -= 1;
else
return false;
}
// 相等 返回true
else
return true;
}
if (array[i][j] == target)
return true;
return false;
}
};
[剑指offer打卡] 15.二维数组中的查找
最新推荐文章于 2021-12-19 21:06:32 发布