首页 > 代码库 > LeetCode Search a 2D Matrix
LeetCode Search a 2D Matrix
Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties:
- Integers in each row are sorted from left to right.
- The first integer of each row is greater than the last integer of the previous row.
For example,
Consider the following matrix:
[ [1, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34, 50]]
Given target = 3
, return true
.
1 public class Solution { 2 public boolean searchMatrix(int[][] matrix, int target) { 3 int line=0; 4 if (matrix.length<1) { 5 return false; 6 } 7 if (target<matrix[0][0]) { 8 return false; 9 }10 for (int i = 1; i < matrix.length; i++) {11 if (matrix[i][0]>target) {12 line=i-1;13 break;14 }15 if (matrix[i][0]==target) {16 return true;17 }18 if (matrix[i][matrix[i].length-1]>=target) {19 line=i;20 } 21 }22 23 for (int is : matrix[line]) {24 if (is==target) {25 return true;26 }27 }28 return false;29 }30 }
LeetCode Search a 2D Matrix
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。