算法第四章作业

1.你对贪心算法的理解

答:就个人的体验而言,贪心算法代表的是一种局部,直观,快速的思想。局部体现在贪心算法在应用时,只需基于当前情况依据一定标准做出选择即可,而不需要考虑选择后会带来的影响。直观体现在当利用贪心算法时,贪心选择的策略是比较直观或者说主观的,也是因此对于程序员的抽象思考要求会更高,并且在不做证明的情况下,程序员也很难确信自己的策略是否正确。快速体现在运行的时间复杂度低以及代码易于书写。对比于动态规划与分治法,贪心算法更为直接,但因要满足局部最优的贪心选择性质,所以在适用场景上会比较受限。

2.请说明汽车加油问题的贪心选择性质

答:汽车加油问题的贪心选择策略是:当前油量能支持走的距离与到下一个加油站的距离作比较,若可支持走到下一个加油站则走到下一个加油站再进行贪心选择,若油量不足以走到下一个加油站则加油后在进行贪心选择。假设存在一种情况使得最少加油次数比当前选择策略下的加油次数要少,则该情况下肯定在某一次当前油量可支持走到下一个加油站时选择了加油,此时最多与当前贪心选择策略加油次数相等,不可能要少,所以该情况不存在,矛盾。

3.请说明在本章学习过程中遇到的问题及结对编程的情况

答:本章节最困难的地方在于贪心选择策略的选取,因为可能多种的选取策略都适用于题目所给出的例子,但总会疏忽些额外的情况导致选择策略并不适用于所有情况。结对编程情况也进展良好,可以吸收不同的思想扩展自己的思维,并且在交流学习的过程中也使自己的思路更加清晰,对贪心算法的理解也变得更为深刻。

posted @ 2019-11-20 18:53  6666浩  阅读(104)  评论(0编辑  收藏  举报