0
是的,这是一项家庭作业/实验作业。 我很感兴趣提出/发现一个算法(我可以理解:P)使用“回溯”来解决子集求和问题。子集问题 - 任何材料?
任何人都有一些有用的资源?我花了最后一个小时左右的时间用Google搜索,并不像找到我认为可以实际使用的东西。 xD
谢谢!
是的,这是一项家庭作业/实验作业。 我很感兴趣提出/发现一个算法(我可以理解:P)使用“回溯”来解决子集求和问题。子集问题 - 任何材料?
任何人都有一些有用的资源?我花了最后一个小时左右的时间用Google搜索,并不像找到我认为可以实际使用的东西。 xD
谢谢!
将数据放入向量中。
然后编写一个包含3个参数的例程:矢量,索引和和。 调用这个例程使用以下参数:向量,0,0。
的例程应执行以下任务:
我特意在这种算法忽略了2份指数+ 1,总和 (在这种情况下,我们没有索引的总和,在添加的元素,但仍然继续):
或者,您可以使用该函数的返回值来确定是否已找到正确的子集。
该算法的复杂性是O(2^N),所以对于大集合它会很慢。
玩得开心。
你能否详细说明“子集总和”问题。它可以有其他的名字,或者甚至是我们这些已经失学的人的简短描述。 – wheaties 2010-05-13 01:22:56
@wheaties http://en.wikipedia.org/wiki/Subset_sum_problem和http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=subset+sum+backtracking – wilhelmtell 2010-05-13 01:40:04