劍指offer 1 二維陣列中的查詢

2021-08-20 07:38:38 字數 785 閱讀 7483

時間限制:1秒

空間限制:32768k

熱度指數:696968

本題知識點: 查詢

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

思路一:遍歷二維陣列,依次判斷是否等於指定整數。

知識補充:

1、獲取二維陣列的行數和列數

行數:arr.length

列數:arr[0].length

2、跳出迴圈

跳出一層迴圈:break

跳出兩層或多層迴圈:為迴圈命名

本人**如下:

public class solution }}

return false;

}}

改進:

陣列矩陣從左到右從上到下都是有序的,因此可以先折半進行比較,可以減少比較次數(相對於遍歷陣列來說)

思路二:左下角的數字,向上數字遞減,向右數字遞增。因此從左下角元素開始查詢,比左下角元素大時則右移,比左下角元素小時則上移。按照上述思路進行遍歷對比。

public class solution else if(target > array[i][j])else

}return false;

}}

Python 劍指offer(1)二維陣列的查詢

題目 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。環境python2.7.3 解 coding utf 8 class solution array 二維...

劍指offer 1 二維陣列查詢

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。二維陣列是有序的,比如下面的資料 1 2 3 4 5 6 7 8 9可以直接利用左下角數字開始查詢 大於 比較...

劍指offer 1 二維陣列查詢

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數 首先是先模擬獲取隨機遞增陣列 public static int getarray int n,int m 初...