74. 搜索二维矩阵

74. 搜索二维矩阵

已解答

中等

相关标签

相关企业

给你一个满足下述两条属性的 m x n 整数矩阵:

  • 每行中的整数从左到右按非严格递增顺序排列。
  • 每行的第一个整数大于前一行的最后一个整数。

给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false

示例 1:

复制代码
输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3
输出:true

示例 2:

复制代码
输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13
输出:false

提示:

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 100
  • -104 <= matrix[i][j], target <= 104
cpp 复制代码
class Solution {
public:
    int row, col, len;

    bool bSearch(vector<vector<int>>& matrix, int target, int start, int end){
        if(end - start <= 1){
            return matrix[start / col][start % col] == target;
        }
        int mid = (start + end) / 2;
        if(matrix[mid /col][mid % col] > target){
            return bSearch(matrix, target, start, mid);
        }
        else{
            return bSearch(matrix, target, mid, end);
        }
    }


    bool searchMatrix(vector<vector<int>>& matrix, int target) {
        row = matrix.size();
        col = matrix[0].size();
        len = row * col;
        return bSearch(matrix, target, 0, len);
    }
};
相关推荐
啦啦啦啦啦zzzz21 分钟前
算法:回溯算法
c++·算法·leetcode
IT探索35 分钟前
Linux 查找文件指令总结
linux·算法
zephyr051 小时前
数据结构-并查集
数据结构
Lumos1861 小时前
51单片机从零到实战(完结)——后续学习路线建议
算法
稚南城才子,乌衣巷风流1 小时前
DFS序详解:原理、应用与实现
算法·深度优先·图论
稚南城才子,乌衣巷风流1 小时前
动态树(Dynamic Tree)数据结构详解
数据结构·算法
zander2582 小时前
114. 二叉树展开为链表
数据结构·链表·深度优先
变量未定义~2 小时前
最小生成树1(Prim模板)、最小生成树2(kruskal模板)、最近公共祖先(模板)
算法
这就是佬们吗2 小时前
Python入门⑤-异常处理、文件操作与实战项目
开发语言·数据库·python·算法·pycharm