劍指Offer 1 二維陣列的查詢

2021-09-24 13:22:53 字數 696 閱讀 7958

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

思路:

因為矩陣從左到右、從上到下遞增,因此二維陣列的最後一列元素都是其對應行的最大元素,因此我們可以根據target與每一行的末尾元素進行比較,如果target大於末尾元素,則用下一行末尾元素進行比較,如果target小於末尾元素,則在本行進行比較,如果target等於末尾元素,則直接返回。具體**如下:

solution:

python

# -*- coding:utf-8 -*-

class solution:

# array 二維列表

def find(self, target, array):

# write code here

i,j = 0,len(array[0])-1

while (i= 0):

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

return true

elif target > array[i][j]:

i += 1

else:

j -= 1

return false

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