欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 焦点 > 力扣 74. 搜索二维矩阵

力扣 74. 搜索二维矩阵

2025/1/9 20:33:21 来源:https://blog.csdn.net/weixin_42383726/article/details/144992471  浏览:    关键词:力扣 74. 搜索二维矩阵

🔗 https://leetcode.cn/problems/search-a-2d-matrix

题目

  • 给一个二维矩阵,保证数字在每行从左到右都是非严格递增
  • 每一行的第一个数字大于上一行最后一个数字
  • 给一个 target,判断是否存在在二维矩阵中

思路

  • 先 binary search 定位到行,再 binary search 定位到列

代码

class Solution {
public:bool searchMatrix(vector<vector<int>>& matrix, int target) {int m = matrix.size();int n = matrix[0].size();int x, y, xx, yy;x = 0; y = 0; xx = m - 1; yy = n - 1;int mid_x = (x + xx) / 2;while (x <= xx) {mid_x = (x + xx) / 2;if (matrix[mid_x][n - 1] < target) {x = mid_x + 1;}if (matrix[mid_x][0] > target) {xx = mid_x - 1;}if (matrix[mid_x][0] <= target && matrix[mid_x][n - 1] >= target)break;}if (matrix[mid_x][0] > target || matrix[mid_x][n - 1] < target) return false;int mid_y = (y + yy) / 2;while (y <= yy) {int mid_y = (y + yy) / 2;if (matrix[mid_x][mid_y] == target) return true;if (matrix[mid_x][mid_y] < target) {y = mid_y + 1;} else {yy = mid_y - 1;}  }return false;}
};

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com