我是靠谱客的博主 高高酸奶,最近开发中收集的这篇文章主要介绍leetcode, 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。给定一个目标数代码 行从左到右递增,列从上到下递增,找目标值,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
字节
讲思路在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序,给定一个目标数,判断是否在矩阵中。
先看target是不是大于第一行最右边的(最大值),
大于然后对比往下一行的最大值,
小于就跟当前一列的值往左对比。。
二维数组是从左到右递增,从上到下递增,row为行数,col为列数,a[row-1][col-1]为最大数,如果剔除这一行,这一列,则最大数为a[row-2][col-2],如果要查找的num小于a[row-2][col-2]并且大于a[row-1][col-1],则在该row-1行和col-1列查找,照这样遍历。
def find(target, array): #find target number in array
i = 0
j = len(array[0]) - 1
while i < len(array) and j >= 0:
base = array[i][j]
if target == base:
return True
elif target > base:
i += 1
else:
j -= 1
return False
print(find(11212,[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]))
最后
以上就是高高酸奶为你收集整理的leetcode, 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。给定一个目标数代码 行从左到右递增,列从上到下递增,找目标值的全部内容,希望文章能够帮你解决leetcode, 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。给定一个目标数代码 行从左到右递增,列从上到下递增,找目标值所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复