重新把数据结构与算法好好扎实的学一遍,一定要养成自己好好写代码的习惯!
就从剑指offer的第一题开始吧!0509
二维数组中的查找
题目描述
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
def Find(target, array):
# write code here
#思路:
#从最左下角开始比较,比起大,向右比较,列坐标加一,比起小,横坐标减一。结束条件,,如果直到下标有一个为负值还没找到,则返回没有
#获取数组的大小
row_len=len(array)
column_len=len(array[0])
row=row_len-1
column=0
while row>=0 and column<column_len:
if target==array[row][column]:
return True
elif target>array[row][column]:
column+=1
else:
row-=1
if row <0 or column==column_len:
return False
arrays=[[1,2,3],[4,5,6],[5,7,9]]
result=Find(20,arrays)
print(result)