思想很简单的贪心
贪心算法是在每一步选择中都采取当前最好的或者最优的选择,从而导致最终的结果是最好的或者最优的
。贪心算法可以解决解决一些最优化问题,如求图中的最小生成树,求哈夫曼编码。算法的思想还是比较容易理解的,难的是问题能否用贪心解决,贪心的具体策略是什么?
如,给你一箱苹果,最多只能拿三个,你会怎么选择?
肯定每次都是拿最大的了,这样最终拿到的苹果肯定是最重的
但是有些问题,如果每次都是选择局部最优解,有可能最终结果不是最优解
如有这样一个数塔,一个人可以从一个格子移动到和它相邻的2个格子,从塔顶到塔底移动路径的最大值是多少?
如果采用贪心策略,每次都选择下一层的最大值,那么最终走过的路径是1->7->2->2,显然不是最优解(最优解是1->5->10->10)
其实这种问题我们可以用动态规划来解决
,后续再聊
区间问题
给你n个课程表,以及每节课的开始时间和结束时间,问你最多能学多少门课?
注意:当a课程的结束时间和b课
版权声明:本文为zzti_erlie原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。