在乙個二維陣列中(每個一維陣列的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
示例:輸入
7,[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]
返回值
true
c++版本
class
solution
for(
int i =
0; i < array.
size()
;i++)}
return
false;}
};
python版本
# -*- coding:utf-8 -*-
class
solution
:# array 二維列表
:# array 二維列表
deffind
(self, target, array)
:# write code here
ifnot array:
return
false
height =
len(array)
wide =
len(array[0]
) i =
0 j = wide-
1while i=0:
if array[i]
[j]==target:
return
true
elif array[i]
[j]>target:
j -=
1else
: i +=
1return
false
class
solution
int height = array.
size()
;int wide = array.
size()
;int i = height-1;
int j =0;
while
((j&&(i>=0)
)else
if(target>array[i]
[j])
else
i--;}
return
false;}
};
1 劍指offer 二維陣列查詢
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。兩種思路 一種是 把每一行看成有序遞增的陣列,利用二分查詢,通過遍歷每一行得到答案,時間複雜度是nlogn p...
二維陣列查詢(劍指offer)
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。解法一 因為每一行都是遞增的,直接對每一行進行二分查詢即可。public class solution if ...
劍指offer 1 二維陣列查詢
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。二維陣列是有序的,比如下面的資料 1 2 3 4 5 6 7 8 9可以直接利用左下角數字開始查詢 大於 比較...