算法第五章作业

1.对回溯算法的理解

回溯法是系统地搜索一个问题的所有解或任一解,它在问题的解空间树中,按深度优先策略,从根节点出发搜索解空间树。搜索至解空间树的任一节点时,先判断该节点是否包含问题的解,若不包含则跳过且向其祖先节点回溯,若包括则继续按照深度优先策略搜索。用回溯法解决问题时,应首先明确定义问题的解空间,并且要将解空间很好地组织起来,使得用回溯法能够方便的搜索整个解空间。回溯法适用于组合数较大的问题。

2.“子集和”问题的解空间结构和约束函数

解空间结构:非负非零整数集合S={x1,x2,…,xn}对应的的一个子集S1,S1中的元素之和为c。

约束函数:代码中m>c为一约束函数,表示如果当前子集和已超过所要的数,则不继续搜索。

3.结对编程情况

两个人在0-1背包问题上纠结了很长时间最后都没有做出来,这是我们上课没有认真听讲的后果。还是应该多打题,丰富经验,对于课上老师讲的经典问题要吃透。

posted @ 2019-12-19 00:33  Backey  阅读(99)  评论(0编辑  收藏  举报