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

1. 你对回溯算法的理解

回溯算法类似于是一个有约束的枚举法。通常在需要找出一个问题的解集 或者找到满足某些约束条件的最佳解时,就会用到回溯法。

回溯法在问题的解空间树中,按深度优先策略,从根结点出发搜索解空间树。我们列出的这个解空间通常用树来表示,就叫做解空间树。

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

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

回溯法的约束函数和界限函数用来剪枝。

回溯法对解空间作深度优先搜索,因此,在一般情况下用递归方法实现回溯法。

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

首先,在学习算法课程中,我粗略地学会了最基本的几种算法:递归和分治、动态规划、贪心算法、回溯还有其他的一些算法。也知道了一些问题我们可以尝试用不同的算法来解,在其中找出一个最优的算法。

其次,在动手实践过程中,我了解到了结对编程对我们学习上面起到的一个督促和陪伴的作用。你看到你的小伙伴开始学习了,你也会不甘落后。而在我们结对编程的时候,我负责打代码的话,我的小伙伴就必须把她的想法理清楚再和我沟通,我也会把我的想法告诉她,反之亦然。这样下来,我会觉得解题的这个过程其实是快乐的,不再是那么枯燥的个人来完成了。

再者,郑琪老师上课给我的感触也是比较深的。曾经看到过郑琪老师上课之前在走廊外面稍显疲倦的面容,可是下一秒,一走进课室,一开始上课,好像就立刻换上了神采飞扬的面具,特别有精气神地给我们上课了。而且郑琪老师平时也非常负责任,对待学生也是尽心尽力,同时,郑琪老师不仅专业知识渊博,讲课还十分幽默风趣,这是令我最佩服的。希望我以后也可以成为不呆板的侃侃而谈的专业人。

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

困难的话,应该要说一开始的时候吧。放假在家也比较松散,没有打代码,一回到学校会发现打代码的时候有些东西忘记了。这个问题自己可以解决。还有其他困难的话,其实谈不上困难,应该是卡壳吧,有时候打代码会卡壳,这个时候一定要思路清晰地演算一遍,用计算机的思维去思考。

如果老师和助教能够分享一些自己的经验给我们就好了!

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

 时间太短了,似乎还有很多知识还没被装进脑子里。

另外就是,希望老师能够不仅是在课程学习上教予我们知识,能够在以后的学习方向甚至是职业选择,给出老师自己的经验和建议就好了!不过老师已经上的非常好了,是我喜欢的算法老师哈哈哈!

posted @ 2020-12-20 10:34  伍昕童  阅读(143)  评论(0编辑  收藏  举报