提交代码
class Solution {
public boolean searchMatrix(int[][] matrix
, int target
) {
if(matrix
==null
||matrix
.length
==0||matrix
[0].length
==0) return false;
int m
=matrix
.length
,n
=matrix
[0].length
;
if(target
<matrix
[0][0]||target
>matrix
[m
-1][n
-1]) return false;
int p1
,p2
,mid
;
for(int i
=0;i
<m
;i
++) {
if(matrix
[i
][0]>target
) return false;
if(matrix
[i
][n
-1]<target
) continue;
p1
=0;p2
=n
-1;
while(p1
<=p2
) {
mid
=(p1
+p2
)/2;
if(matrix
[i
][mid
]==target
) return true;
else if(target
<matrix
[i
][mid
])
p2
=mid
-1;
else
p1
=mid
+1;
}
}
return false;
}
}
运行结果
转载请注明原文地址: https://yun.8miu.com/read-111471.html