标签:
题目链接:https://leetcode.com/problems/search-a-2d-matrix-ii/
题目:
Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties:
For example,
Consider the following 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] ]
Given target = 5
, return true
.
Given target = 20
, return false
.
思路:
从左上角开始搜索。因为matrix[i][j]小于所有>i 或>j的元素,也就是讲只有0~i 和0~j的元素无法确定大小。
算法:
public boolean searchMatrix(int[][] matrix, int target) { int j = matrix[0].length-1,i=0; while(i<matrix.length&&j>=0){ if(matrix[i][j]>target){ j--; }else if(matrix[i][j]<target){ i++; }else{ return true; } } return false; }
【Leetcode】Search a 2D Matrix II
标签:
原文地址:http://blog.csdn.net/yeqiuzs/article/details/51501280