編寫乙個高效的演算法來判斷 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
解:二分查詢,先把每一行的最後看成是要查詢的陣列,找到右邊界,然後開始二分查詢這一行。**如下:
class
solution
int h = l;
l =0;
r = matrix[h]
.size()
-1;while
(l < r)
if(matrix[h]
[r]== target)
return
true
;else
return
false;}
};
陣列 二分 LeetCode74 搜尋二維矩陣
編寫乙個高效的演算法來判斷 m x n 矩陣中,是否存在乙個目標值。該矩陣具有如下特性 每行中的整數從左到右按公升序排列。每行的第乙個整數大於前一行的最後乙個整數 變成了240題的特例 通用模板就看 leetcode240 搜尋二維矩陣ii 本題解法在240基礎上加了優化 因為每一行遞增,每一列遞增...
74 搜尋二維矩陣
題目 編寫乙個高效的演算法來判斷 m x n 矩陣中,是否存在乙個目標值。該矩陣具有如下特性 每行中的整數從左到右按公升序排列。每行的第乙個整數大於前一行的最後乙個整數。示例 1 輸入 matrix 1,3,5,7 10,11,16,20 23,30,34,50 target 3 輸出 true 示...
74 搜尋二維矩陣
74.搜尋二維矩陣 author wsq date 2020 10 06 編寫乙個高效的演算法來判斷 m x n 矩陣中,是否存在乙個目標值。該矩陣具有如下特性 每行中的整數從左到右按公升序排列。每行的第乙個整數大於前一行的最後乙個整數。示例 1 輸入 matrix 1,3,5,7 10,11,16...