題目
在乙個 n * m的二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
示例:本題與leetcode 240題相同:現有矩陣 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,返回
true。
給定 target = 20,返回 false。
限制:0 <= n <= 1000
0 <= m <= 1000
演算法思路
由於陣列中的數字各行各列都是降序排列,所以,可以通過從右上角位置處開始查詢,即行i為0,列j為列的數值減一,
class
solution
return
false;}
}
複雜度
時間複雜度:最大為o(m+n),對二維陣列進行了一次遍歷。
空間複雜度:o(1),沒有額外的空間開銷。
面試題 04 二維陣列中的查詢
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。樣例 輸入陣列 1,2,8,9 2,4,9,12 4,7,10,13 6,8,11,15 如果輸入查詢數值為7...
面試題04 二維陣列中的查詢
在乙個 n m 的二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。示例 現有矩陣 matrix 如下 1,4,7,11,15 2,5,8,12,19 3,6,9,16,22 10,13,1...
面試題04 二維陣列中的查詢
題目描述 在乙個 n m 的二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。示例 現有矩陣 matrix 如下 1,4,7,11,15 2,5,8,12,19 3,6,9,16,22 10...