劍指offer 1 二維陣列中找某值元素

2021-10-09 12:58:27 字數 565 閱讀 1524

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

暴力:兩層for迴圈

牛客網上的樣例比較簡單(小),所以應能通過,時間複雜度o(m*n)=>o(n^2)

class solution 

// 兩層for迴圈

for (int i = 0; i < row; i++) }}

return false;

}};

沒思路的時候模擬:右上角和左下角不斷比較

class solution 

// 從二維陣列的右上角開始不斷縮減搜尋區域

int r = 0, c = cloumn - 1;

while (r < row && c >= 0) else if (array[r][c] > target) else

}return false;

}};

時間複雜度最差應該是o(n+m)的,即o(n)

劍指offer 1 二維陣列查詢

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

劍指offer 1 二維陣列查詢

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

劍指Offer 1 二維陣列查詢

劍指offer 1 二維陣列查詢 馬上也要畢業開始找工作了,自己程式設計能力實屬弟弟,笨鳥先飛,雖然飛得好像也不早了,打算每天做一道吧,爭取暑假前做完。準備秋招了,目前就是在牛客網上做題為主 題目要求是這樣 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從...