算法第五章作业及学期总结

1. 我对回溯算法的理解

基本思想:

回溯法在问题的解空间树中,按深度优先策略,从根结点出发搜索解空间树。算法搜索至解空间树的任意一点时,先判断该结点是否包含问题的解。如果肯定不包含(剪枝过程),则跳过对该结点为根的子树的搜索,逐层向其祖先结点回溯;否则,进入该子树,继续按深度优先策略搜索。

回溯法就是对隐式图的深度优先搜索算法

回溯法:为了避免生成那些不可能产生最佳解的问题状态,要不断地利用限界函数来剪枝那些实际上不可能产生所需解的活结点,以减少问题的计算量,提高算法的速度。具有限界函数的深度优先生成法称为回溯法。(回溯法 = 穷举+剪枝)

一般步骤:

(1)针对所给问题,定义问题的解空间;
(2)确定易于搜索的解空间结构;
(3)以深度优先方式搜索解空间,并在搜索过程中用剪枝函数避免无效搜索。

两个常用的剪枝函数:

(1)约束函数:在扩展结点处减去不满足约束的子数
(2)限界函数:减去得不到最优解的子树

2. 你学习《算法分析与设计》课程的收获

学习了许多算法:分治法、贪心法、动态规划、回溯等等。了解了这些算法的基本思想,基本性质,学会利用这些算法来解题。

对于以前学过的一些知识,碰到的一些题,学了这门课程之后,发现原来有更快,更方便的算法可以解题。收获还是很多的。

 

3. 你在学习过程中曾遇到了哪些困难,希望老师或助教及时给予帮助。

应该是完成平时的作业的时候,虽然上课好像听懂了,例题也听懂了,但是到自己独立解决的时候还是很模糊,一下子转不过弯来。

4. 你对本门课程的教学有哪些建议

老师讲课很有趣哈哈哈,没有什么建议

posted @ 2020-12-19 22:56  kms115  阅读(81)  评论(0编辑  收藏  举报