力扣 240 搜索二維矩陣 II

題意:給定一個二維數(shù)組,行列都拍好序,找出target是否存在

思路:從數(shù)組的右上角開始查找

  1. 右上角的數(shù)比target大,那么向下移動一行
  2. 右上角的數(shù)比target小,那么向左移動一列
  3. 越界就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;    
    }
}
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容