題目描述:
在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
思路:
這道題可以使用對角線的方法完成,可以從右上角的元素考慮,如果目標查詢元素小於右上角的元素,那麼不可能在右上角元素所在的列,如果目標大於剩餘列的右上角的元素,那麼不可能在該右上角元素所在的行。依照這個規律,就可以完成目標元素的查詢。
例如矩陣:
1 2 8 9
2 4 9 12
4 7 10 13
6 8 11 15
下面為牛客ac**:
public
class
solution
return
false;
}}
參考
1. 何海濤,劍指offer名企面試官精講典型程式設計題(紀念版),電子工業出版社
劍指offer 2 二維陣列中的查詢
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。把每一行看成有序遞增的陣列,利用二分查詢,通過遍歷每一行得到答案,時間複雜度是o nlogn class so...
二維陣列查詢(劍指offer)
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。解法一 因為每一行都是遞增的,直接對每一行進行二分查詢即可。public class solution if ...
劍指offer 二維陣列的查詢
題目描述 書中第三題 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。public class solution return false 要自己處理輸入的版本 public sta...