LintCode 28 搜尋二維矩陣

2021-08-15 01:17:13 字數 762 閱讀 1546

寫出乙個高效的演算法來搜尋 m × n矩陣中的值。

這個矩陣具有以下特性:

每行中的整數從左到右是排序的。

每行的第乙個數大於上一行的最後乙個整數。

樣例

考慮下列矩陣:

[ [1, 3, 5, 7],

[10, 11, 16, 20],

[23, 30, 34, 50]

] 給出 target = 3,返回 true

挑戰

o(log(n) + log(m)) 時間複雜度

因為是有序的,所以直接看每個小列表的最後乙個是不是小於這個數就知道在不在這個小列表裡了。

class solution }}

return

false;

}};

class solution  else

if(matrix[nmid][0] > target) else else

if(matrix[nmid][mmid] > target) else

}return

false;}}

return

false;

}};

二分法時間複雜度為o(logn).

《Lintcode簽到》 28 搜尋二維矩陣

寫出乙個高效的演算法來搜尋 m n矩陣中的值。這個矩陣具有以下特性 每行中的整數從左到右是排序的。每行的第乙個數大於上一行的最後乙個整數。樣例樣例 1 輸入 5 2 輸出 false 樣例解釋 沒有包含,返回false。樣例 2 輸入 1,3,5,7 10,11,16,20 23,30,34,50 ...

lintcode 第28題 搜尋二維矩陣

寫出乙個高效的演算法來搜尋 m n矩陣中的值。這個矩陣具有以下特性 樣例 考慮下列矩陣 1,3,5,7 10,11,16,20 23,30,34,50 給出target 3,返回true 思路比較簡單,和蠻力破解沒有什麼不一樣,在這裡就不說了,直接貼 如下 public class solution...

領扣LintCode問題答案 28 搜尋二維矩陣

領扣lintcode問題答案 28.搜尋二維矩陣 寫出乙個高效的演算法來搜尋 m n矩陣中的值。這個矩陣具有以下特性 每行中的整數從左到右是排序的。每行的第乙個數大於上一行的最後乙個整數。樣例 1 輸入 5 2 輸出 false 樣例解釋 沒有包含,返回false。樣例 2 輸入 1,3,5,7 1...