算法第5章作业
---恢复内容开始---
-
你对回溯算法的理解(2分) 解:是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。
-
请说明“子集和”问题的解空间结构和约束函数(2分) 解:
解空间结构:“子集和”问题的求解方法与“01-背包”问题相似,针对解空间的每一个解,检测其是否被选择,如果是,则标记为1;如果不是,则标记为0,并且继续搜索。 直到找到求解的子集和,并输出路径。
约束函数:假设子集和为S,当前搜索到子集权重为w,前面累计权重为sum,若sum+w>S,则说明当前节点往下的节点权重加和大于S,此时需要回溯。
-
请说明在本章学习过程中遇到的问题及结对编程的情况(1分) 解:遇到的问题:很容易搞混约束函数与限界函数,在剪枝问题上很容易出错。结队编程情况:回溯法解决0-1背包上遇到了问题,最后两个案例通过不了。
---恢复内容结束---