贪心算法可以达到局部最优,但可能不是全局最优解。
这题考的是贪心算法的核心定义。拿到题先别想复杂证明,直接回归课本定义:贪心就是每步选当前最优,且不回溯。题干前半句说它能达局部最优(定义成立),后半句说可能非全局最优(反例存在,如0-1背包),两者都对,所以选A。
最容易错在把‘贪心’二字绝对化,误以为贪心一定能求全局最优,或者看到‘可能不是’就慌了,觉得这是陷阱。其实命题人就在考你对‘可能’这两个字的敏感度——贪心确实‘可能’达不到全局最优,但绝不是‘一定’达不到。典型错误是混淆贪心和动态规划,以为贪心是DP的简化版,其实它们本质不同。还有学生会把‘局部最优’理解成‘只能得到局部最优’,忽略了‘可以达到’这个存在性描述。
【考点】贪心算法|局部最优与全局最优的关系
【概念说人话】贪心算法就是做选择:每一步都挑当前看起来最好的,而且选了就不回头。比如买苹果,每次挑最便宜的,直到钱花完。这种策略保证的是‘局部最优’——每一步都对了,但不保证‘全局最优’——最后结果未必最好。
【命题人怎么挖坑】这题就是专门卡住那些只背结论不读定义的同学。题干前半句‘可以达到局部最优’是定义式陈述,后半句‘可能不是全局最优解’是反例存在性断言。很多人看到‘贪心’就下意识以为它‘一定’能求全局最优,或者看到‘可能不是’就紧张,觉得这是陷阱。其实命题人就在考你对‘可能’这两个字的敏感度——贪心确实‘可能’达不到全局最优,但绝不是‘一定’达不到。典型反例是0-1背包问题:按重量贪心选最轻的,或者按价值贪心选最贵的,都得不到最优解,必须用动态规划。
【思考心法】拿到题先想:贪心定义是什么?它能不能保证全局最优?不能,所以‘可能不是全局最优’这句话是对的。再看前半句:它能不能达到局部最优?能,因为定义就是每步选当前最优。两句都成立,答案自然是A。
【避坑提醒】别把‘局部最优’理解成‘只能得到局部最优’,忽略了‘可以达到’这个存在性描述;也别把贪心和动态规划混为一谈,以为贪心是DP的简化版,其实它们本质不同。还有学生会把‘可能不是’误读为‘一定不是’,结果选错。
【考频趋势】贪心算法在GESP五级共考了25题,是五级的高频考点。从历年分布看,2024年考了16题,2025年考了12题,2026年考了24题,呈现明显上升趋势。这说明命题组越来越重视对贪心本质的考察,尤其是区分贪心与动态规划的边界。
【预测】基于数据,未来GESP五级仍会高频考查贪心算法,且更倾向于出概念辨析题,比如‘贪心一定能求全局最优吗’‘贪心和动态规划的区别是什么’这类。建议考生把贪心的定义、典型反例(0-1背包)、以及它与动态规划的对比记牢,遇到概念题先回归定义,再想反例,这样基本不会错。