0、贪心算法概述
...About 1 min
0、贪心算法概述
一、什么是贪心
贪心就是每一阶段选择最优解,从而达到全局最优。
贪心是我觉得最难也是最简单的算法,可能我们就发现不了我们使用的贪心,但是我们实际却使用到了贪心,也有可能我们觉得思路就该是这样的但是我们就是写不出来。
例如,有一堆钞票,你可以拿走十张,如果想达到最大的金额,你要怎么拿?
指定每次拿最大的,最终结果就是拿走最大数额的钱。
每次拿最大的就是局部最优,最后拿走最大数额的钱就是推出全局最优。
二、什么时候使用贪心
我也不知道什么时候使用贪心,当我们发现手动模拟一下感觉可以局部最优推出整体最优,而且想不到反例,那么就试一试贪心。
有些问题中可能会有一些答案比如。问题中有设计最大值,最小值,或者是能不能到达某个目标这个有可能是使用贪心。但是也是需要具体分析。
贪心能解决什么类型的问题,大体可以总结为以下方面但是绝对不全面
- 最值问题
- 区间问题
- 能否问题
三、贪心的一般解题步骤
找到局部最优是什么,如果推导出全局最优,其实就够了
贪心如果不做个50题,可能感觉很难培养。
Powered by Waline v2.15.8