
剑指 Offer 04. 二维数组中的查找
https://leetcode.cn/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof/
- 要先观察出规律,找到要遍历的顺序
- 从右上角往左下角的方向遍历
bool findNumberIn2DArray(vector<vector<int>>& matrix, int target) {
// base case
if (matrix.empty() || matrix[0].empty())
{
return false;
}
int m = matrix.size(), n = matrix[0].size();
int row = 0, col = n - 1;
while (row < m && col >= 0)
{
if (matrix[row][col] < target)
{
++row;
}
else if (matrix[row][col] > target)
{
--col;
}
else
{
return true;
}
}
return false;
}
该问题是一个在给定的二维矩阵中查找特定目标值的算法。首先检查矩阵是否为空,然后从右上角开始,按顺序向左下角遍历。如果当前元素小于目标,则向上移动;如果大于目标,则向左移动。当找到目标时返回true,否则返回false。
698

被折叠的 条评论
为什么被折叠?



