题目
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/search-a-2d-matrix-ii
编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:
每行的元素从左到右升序排列。
每列的元素从上到下升序排列。
示例 1:
输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 5
输出:true
示例 2:
输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 20
输出:false
提示:
m == matrix.length
n == matrix[i].length
1 <= n, m <= 300
-109 <= matrix[i][j] <= 109
每
本文介绍了如何高效地在已知每行每列升序排列的二维矩阵中搜索目标值。提供了两种解法:暴力遍历法和二分查找法。其中二分查找法在每行进行,可以显著提高搜索效率。还提到了一种Z字形查找法,从矩阵右上角开始,利用矩阵的特性进行搜索。时间复杂度分析表明,不同方法的时间复杂度分别为O(mn)、O(nlogm)和O(m+n),而空间复杂度均为O(1)。
订阅专栏 解锁全文
369

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



