本文介绍了查找数组是否包含2旁边的2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我被困在这个问题上
has22([1, 2, 2]) → True
has22([1, 2, 1, 2]) → False
has22([2, 1, 2]) → False
我知道基本思想(有语法错误),但我无法实现。我也想知道这是什么类型的问题,例如。图表,搜索?
I know the basic idea (there are syntax errors) but I can't implement it. I would also like to know what type of problem this is, eg. graph, search?
def has22(nums):
for x in nums:
if ( (nums[x] = 2) and (nums[x+1] = 2) )
return True
return False
推荐答案
def has22(nums):
return any(x == y == 2 for x, y in zip(nums, nums[1:]))
>>> has22([1, 2, 2])
True
>>> has22([1, 2, 1, 2])
False
>>> has22([2, 1, 2])
False
在Python 2中使用: code> from itertools import izip 如果你想要一个懒惰的 zip
In Python 2 use: from itertools import izip
if you want a lazy zip
这篇关于查找数组是否包含2旁边的2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!