劍指offer 1 矩陣陣列找數

2021-09-11 03:56:48 字數 549 閱讀 1883

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

思路1:從左下角開始尋找,大於目標,則向右移動,小於目標則向左移動。

class solution:

# array 二維列表

def find(self, target, array):

# write code here

row = len(array)-1

col = len(array[0])-1

i = row

j = 0

while(i >= 0 and j<=col):

if(array[i][j]==target):

return true

elif array[i][j]< target:

j = j+1

else:

i = i-1

return false

思路2:把每一行變成乙個有序陣列,利用二分查詢進行查詢

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

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。暴力 兩層for迴圈 牛客網上的樣例比較簡單 小 所以應能通過,時間複雜度o m n o n 2 class ...

劍指offer 1 二維陣列查詢

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

劍指offer 1 二維陣列查詢

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