Python 2.7 计算给定列表的子集之和是否递归存在
我需要构建一个接收整数列表(数字)和非负整数(目标)的递归函数 函数将查找给定列表的任何可能子集,如果其值相加等于目标值,则返回Python 2.7 计算给定列表的子集之和是否递归存在,python-2.7,recursion,Python 2.7,Recursion,我需要构建一个接收整数列表(数字)和非负整数(目标)的递归函数 函数将查找给定列表的任何可能子集,如果其值相加等于目标值,则返回True def subset_sum(numbers, target): ''' numbers - a list of positive integers target - a non-negative integer returns True if the list 'numbers' has a sub-list with sum
True
def subset_sum(numbers, target):
'''
numbers - a list of positive integers
target - a non-negative integer
returns True if the list 'numbers' has a sub-list with sum 'target',
False otherwise.
'''
Side Note: [] is a subset of any given list (set)
示例:
subset_sum([1,2,3,4], 8):
True
subset_sum([1,2,3,4], 11):
False
subset_sum([4,4,4], 05):
True
subset_sum([4,4,4], 11):
False
subset_sum([], 0):
True
感谢您的帮助 这是子集和问题的一个变体(子问题),您可以在这里阅读:
有一种伪码算法概述,它可以在多项式时间内近似地解决任何整数(正或负)的问题。有趣的是,这是在Stackoverflow和python中发布的
问题是…?我没有这样做,目前正在寻求帮助。