在乙個二維陣列中(每個一維陣列的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
時間限制:1秒 空間限制:32768k 熱度指數:1448982
本題知識點: 查詢
陣列1.全域性順序查詢
占用記憶體:5636k
#思路:一行一行順序查詢#-*- coding:utf-8 -*-
class
solution:
#array 二維列表
deffind(self, target, array):
#write code here
for i in
range(len(array)):
for j in
range(len(array[0])):
if target >array[i][j]:
print("
continue:
",i,array[i][j])
continue
elif target ==array[i][j]:
print("
true:
",array[i][j])
return
true
return false
2.根據資料規律快速查詢
占用記憶體:5752k
#-*- coding:utf-8 -*-
'''思路
矩陣是有序的,從左下角來看,向上數字遞減,向右數字遞增,
因此從左下角開始查詢,當要查詢數字比左下角數字大時。右移
要查詢數字比左下角數字小時,上移
'''class
solution:
#array 二維列表
deffind(self, target, array):
#write code here
rownum,colnum =len(array),len(array[0])
(rownum,colnum)
i,j = rownum-1,0
while i >= 0 and j print
(i,j,array[i],array[j])
if array[i][j] ==target:
return
true
elif array[i][j] >target:
i -= 1
elif array[i][j] 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 二維陣列查詢 馬上也要畢業開始找工作了,自己程式設計能力實屬弟弟,笨鳥先飛,雖然飛得好像也不早了,打算每天做一道吧,爭取暑假前做完。準備秋招了,目前就是在牛客網上做題為主 題目要求是這樣 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從...