搜索二维矩阵
解题思路:
-
将二维数组变成一维数组;
-
对一维数组进行二分查找;
复杂度:
-
时间复杂度:O(logmn),其中 m 和 n 分别是矩阵的行数和列数;
-
空间复杂度:O(1);
代码实现:
var searchMatrix = function (matrix, target) {
let list = [];
for (let i = 0; i < matrix.length; i++) {
list.push(...matrix[i]);
}
let left = 0;
let right = list.length - 1;
while (left <= right) {
let mid = left +(right - left) >> 1;
if (list[mid] === target) {
return true;
}
if (list[mid] < target) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return false;
};
953.验证外星语词典
上一篇