題意:給定一個二維數(shù)組日裙,行列都拍好序,找出target是否存在
思路:從數(shù)組的右上角開始查找
- 右上角的數(shù)比target大乘瓤,那么向下移動一行
- 右上角的數(shù)比target小严就,那么向左移動一列
- 越界就break,返回false
思想:遍歷數(shù)組
復雜度:時間O(n)汗销,空間O(1)
class Solution {
public boolean searchMatrix(int[][] matrix, int target) {
int m = matrix.length;
if(m == 0)
return false;
int n = matrix[0].length;
int rm = 0;
int rn = n - 1;
while(rm < m && rn >= 0) {
if(target < matrix[rm][rn]) {
rn--;
} else if(target == matrix[rm][rn]){
return true;
} else {
rm++;
}
}
return false;
}
}