代码改变世界

算法第4章作业

2018-11-29 23:40  葡萄葡萄葡葡萄  阅读(229)  评论(0)    收藏  举报

1、对贪心算法的理解

     贪心算法总是做出在当前看来最好的选择,它并不是从整体上的最优加以考虑,而只是做出局部最优选择。动态规划算法是依赖于子问题的解,在子问题的到解决后才做出相应的选择,而贪心算法选择局部最优解,且贪心算法一般在排好序的基础之上进行选择。如果不确定应该使用贪心算法还是动态规划算法,则应证明其通过局部最优解能否得到全局最优解,若能则使用贪心算法,反之使用动态规划算法。其主要步骤是从初始最优解出发朝总目标前进,到不满足条件时退出。

2、汽车加油问题的贪心选择性质

     由题可知当让汽车所剩的汽油不能到达下一站时便在当前站加油可以使得加油次数最少,设c为可行公里数,用count来记录加油次数,用num[k]来记录加油站信息。从目的地开始,执行c=c-num[i],当c=c-num[i]小于零时,count++,c置为n,直到num[k]

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

    做第一题时一开始没有注意到题目无解的情况,后来在队友的提醒下及时避开了坑,不得不说结对编程真的很能提高效率,队友也很细心,有耐心。