二維陣列查詢(劍指offer)

2021-09-12 06:28:53 字數 495 閱讀 8200

在乙個二維陣列中(每個一維陣列的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。

解法一:因為每一行都是遞增的,直接對每一行進行二分查詢即可。

public class solution 

if(targethigh)}}

return false;

}}

解法二:很明顯上下都遞增,我們選取陣列左下角的值array[i][j]進行比較,迴圈如果該值大於目標值,則值往上走i–;如果值小於目標值,則值往左走j++;直到找到或i,j不滿足條件。(選取右上角值也可以比較這樣才可以走)

public class solution else if(target}

return false;

}}

劍指offer 二維陣列的查詢

題目描述 書中第三題 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。public class solution return false 要自己處理輸入的版本 public sta...

劍指Offer 二維陣列的查詢

題目 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。思路 題目給定二維陣列按行遞增,按列遞增。1.錯誤 有一種很自然的想法就是分別按行和列定位,細想一下這是不行的 例如按行定位時,...

《劍指offer》二維陣列的查詢

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。定義乙個這樣的陣列 比如查詢數字7,我們先用右上角的數字進行比較,7 10,說明7在10這列的左邊,因此剔除掉...