算法第四章作业

谁说我不能喝 提交于 2019-12-05 12:08:52

一、我对贪心算法的理解

贪心算法总是做出在当前看来是最好的选择,并不从整体最优上加以考虑,他所做出的选择只是在某种意义上的局部最优选择。虽然贪心算法不是对所有问题都能得到整体最优解,但对范围相当广的许多问题,他能产生整体最优解。

基本要素:

  1.贪心选择性质:所求问题的整体最优解可以通过一系列局部最优的选择来达到。贪心算法所做的贪心选择可以依赖于以往所做过的选择,但决不依赖于将来所做的选择,也不依赖于子问题的解。贪心算法通常以自顶向下的方式进行,以迭代的方式做出相继的贪心选择,每做一次贪心选择就将所求问题简化为规模更小的子问题。

  2.最优子结构性质:当一个问题的最优解包含其子问题的最优解时,称此问题具有最优子结构性质。

今典问题:活动安排问题,背包问题,哈夫曼编码,最小生成树

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

贪心选择:最远能到达的地方的前一个加油站,不断这样选择,直到到达目的地;如果是其刚才所在的加油站,表示无法到达目的地,输出“No Solution!”

三、遇到的问题及结对编程的情况

  1.问题:哈夫曼编码的前缀码的二叉树有点难理解

  2.结对编程情况:在课上齐心协力把前两道题做出来了,课后把第三题做出来了,课上在第二题那里在Dev C++上所有情况考虑进去,运行出来的是正确答案。但是在PTA上就是后面有一个答案错误,很疑惑。最后找呀找,同伴找到了了问题,最后答案正确。

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!