寫出乙個高效的演算法來搜尋 m × n矩陣中的值。
這個矩陣具有以下特性:
每行中的整數從左到右是排序的。
每行的第乙個數大於上一行的最後乙個整數。
樣例樣例 1:
輸入: [[5]],2
輸出: false
樣例解釋:
沒有包含,返回false。
樣例 2:
輸入:[
[1, 3, 5, 7],
[10, 11, 16, 20],
[23, 30, 34, 50]
],3輸出: true
樣例解釋:
包含則返回true。
思路:就是二分查詢法,主要是有了m乘n找到對應的數
**:public boolean searchmatrix(int matrix, int target)
int h=matrix.length;
int l=matrix[0].length;
int low=0;
int high=h*l;
while(lowmatrix[mid/l][mid%l])else
}return false;
}
LintCode 28 搜尋二維矩陣
寫出乙個高效的演算法來搜尋 m n矩陣中的值。這個矩陣具有以下特性 每行中的整數從左到右是排序的。每行的第乙個數大於上一行的最後乙個整數。樣例 考慮下列矩陣 1,3,5,7 10,11,16,20 23,30,34,50 給出 target 3,返回 true 挑戰 o log n log m 時間...
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...