子集和问题:
设集合S={x1,x2,…,xn}是一个正整数集合,c是一个正整数,子集和问题判定是否存在S的一个子集S1,使S1中的元素之和为c。
解空间结构:
和0-1背包问题差不多。
约束函数:
先把集合里的数按递增序列排序,若当前的和sum加上当前正在进行的ai如果小于要求的和c,就是可以继续进行下一步k+1,若sum加上剩余的排在最后面的子集的和大于要求的和,就不符合要求,就可以跳过,并回溯到上一个步骤。
三、请说明在本章学习过程中遇到的问题及结对编程的情况
回溯算法的难点:剪枝函数比较难构建。
结对编程:经过了一学期的磨合,现在已经可以和队友配合默契了。感谢队友一学期的支持和鼓励,希望我们都能再接再厉。