編寫乙個高效的演算法來判斷 m x n 矩陣中,是否存在乙個目標值。
該矩陣具有如下特性:
每行中的整數從左到右按公升序排列。
每行的第乙個整數大於前一行的最後乙個整數。
示例 1:
輸入:matrix = [
[1, 3, 5, 7],
[10, 11, 16, 20],
[23, 30, 34, 50]
]target = 3
輸出: true
示例 2:
輸入:matrix = [
[1, 3, 5, 7],
[10, 11, 16, 20],
[23, 30, 34, 50]
]target = 13
輸出: false
參考劍指offer1.二維陣列中的查詢:
class
solution
:def
searchmatrix
(self, matrix: list[list[
int]
], target:
int)
->
bool:if
not matrix:
return
false
x, y =
len(matrix)
,len
(matrix[0]
) i, j = x-1,
0while i >=
0and j <= y-1:
if matrix[i]
[j]== target:
return
true
elif matrix[i]
[j]> target:
i -=
1else
: j +=
1return
false
LeetCode74 搜尋二維矩陣
題目大意 要求在乙個二維矩陣中搜尋乙個數,要求是時間盡可能少。說明 二維矩陣是從左到右,從上到下依次增大的。題目分析 本題如果用挨個遍歷的話,顯然沒有利用上矩陣中的有序關係。我的做法是 將target的值與每行的最後乙個數進行比較,若最後乙個數小於target,那麼還要往下搜尋,將搜尋的行邊界的上界...
leetcode 74 搜尋二維矩陣
編寫乙個高效的演算法來判斷 m x n 矩陣中,是否存在乙個目標值。該矩陣具有如下特性 示例 1 輸入 matrix 1,3,5,7 10,11,16,20 23,30,34,50 target 3輸出 true示例 2 輸入 matrix 1,3,5,7 10,11,16,20 23,30,34,...
Leetcode 74 搜尋二維矩陣
編寫乙個高效的演算法來判斷 m x n 矩陣中,是否存在乙個目標值。該矩陣具有如下特性 示例 1 輸入 matrix 1,3,5,7 10,11,16,20 23,30,34,50 target 3輸出 true示例 2 輸入 matrix 1,3,5,7 10,11,16,20 23,30,34,...