题目
- 给你一个满足下述两条属性的 m x n 整数矩阵:
每行中的整数从左到右按非严格递增顺序排列。
每行的第一个整数大于前一行的最后一个整数。
给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。
![]()
题解:数组扁平化+二分查找
var searchMatrix = function(matrix, target) {
let a = matrix.flat(2)//数组扁平化
// let a = matrix.toString().split(",").map(Number)//数组扁平化
let i=0,j=a.length-1
while(i<=j){
let mid = Math.floor((i+j)/2)
if(target == a[mid]) return true
else if(target < a[mid]){
j = mid-1
}else{
i=mid+1
}
}
return false
};
var searchMatrix = function(matrix, target) {
let a = matrix.flat(2)//数组扁平化
// let a = matrix.toString().split(",").map(Number)//数组扁平化
let i=0,j=a.length
while(i<j){
let mid = Math.floor((i+j)/2)
if(target == a[mid]) return true
else if(target < a[mid]){
j = mid
}else{
i=mid+1
}
}
return false
};