Leetcode 0240: Search a 2D Matrix II

Title description:

Write an efficient algorithm that searches for a target value in an m x n integer matrix. The matrix has the following properties:
Integers in each row are sorted in ascending from left to right.
Integers in each column are sorted in ascending from top to bottom.

Chinese description:

Write an efficient algorithm to search for a target value target in the mxn matrix. The matrix has the following characteristics:
the elements of each row are arranged in ascending order from left to right.
The elements of each column are arranged in ascending order from top to bottom.

Example 1:
Insert picture description here

Input: 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]], target = 5
Output: true

Example 2:
Insert picture description here

Input: 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]], target = 20
Output: false

Constraints:

m == matrix.length
n == matrix[i].length
1 <= n, m <= 300
-109 <= matix[i][j] <= 109
All the integers in each row are sorted in ascending order.
All the integers in each column are sorted in ascending order.
-109 <= target <= 109

Time complexity: O(n+m)
Because the matrix increases from left to right, from top to bottom, starting from the point of the lower left intersection, if the value of target is greater than the current point, it will move to the right, the value of target If the point is smaller than the current point, it will move up.

class Solution {
    
    
    public boolean searchMatrix(int[][] matrix, int target) {
    
    
        int n = matrix.length;
        int m = matrix[0].length;
        int col = 0;
        int row = n-1;
        while(row >= 0 && col <= m-1){
    
    
            if(matrix[row][col] == target){
    
    
                return true;
            }else if(matrix[row][col] < target){
    
    
                col++;
            }else{
    
    
                row--;
            }
        }
        return false;
    }
}

Guess you like

Origin blog.csdn.net/weixin_43946031/article/details/114023482