算法第五章总结及学期总结
一. 对回溯法的理解
1.首先需要构造解空间树:子集树和排列树;
2.以深度优先的方式搜索解空间:递归或迭代;
3.设计剪枝函数避免无效搜索:使用约束函数,剪去不满足约束条件的路径或使用限界函数,剪去不能得到最优解的路径。
回溯法解问题的一个显著特征是,解空间树是虚拟的,在任何时候,只需保存从根节点到当前扩展结点的路径。
在回溯问题中,若要求问题的所有解,就要回溯到根。
二. 学习《算法设计与分析》课程收获
通过这学期的学习,掌握了二分搜索法、贪心算法、动态规划法和回溯法,编程能力有了进一步的提高,更加深入地了解了编程。好的程序需要有好的算法才能够实现,算法也是一个程序最为重要的一部分。
三. 在学习过程中遇到的困难
在刚开始接触算法这门课程的时候,理解算法的中心思想比较困难,但在反复去思考并结合例题进行理解后,知道如何运用算法进行解题。
四. 对本门课程的看法
通过结对编程的方法,在解题过程中与结对伙伴进行讨论,能够学习到另一种思路进行解题。