贪心算法通过每一步选择局部最优解来获得全局最优解,但并不一定能找到最优解。
贪心算法每一步做出当前最优选择,且不回溯。难点在于证明贪心策略的正确性(常用交换论证法)。
贪心算法需要严格证明正确性。典型错误:局部最优不等于全局最优。例如0-1背包问题就不能用贪心。
【考点】贪心算法的定义与特性|算法正确性条件(最优子结构、贪心选择性质)|GESP五级算法策略
🎯 考纲定位 命题人卡住的是"贪心算法"概念的本质认知:它试图求全局最优,但仅在特定条件下有效。五级算法策略模块常考"算法思想辨析",这里用一句完整陈述代替传统例题,考查学生是否能识别算法的"目标"与"实际能力"之间的差距。
🧠 解题思维 看到"贪心算法"四字,先定位到算法思想层面。题干核心是两句话的联合判断:前句强调贪心策略的"目标"(局部最优导向全局),后句强调其"局限性"(并非总能成功)。解题关键在于理解"贪心"与"最优"的关系——贪心算法是试图通过局部最优解逼近全局最优解,但只有在问题具备最优子结构和贪心选择性质时才有效。因此题干完整描述了贪心算法的本质与局限,判断为真。
🪤 陷阱拆解 选B的考生常陷入"贪心=总是最优"的误区,误以为贪心算法能解决所有问题;而题干后半句"并不一定能找到最优解"恰恰是区分贪心与动态规划的关键。命题人利用"绝对化"陷阱(如"总能""一定")诱导学生盲目自信,实则考查对算法适用条件的理解。
🔄 反命题思维 若题目改为"贪心算法总能找到最优解",答案必为B;若限定"在满足最优子结构的问题上",答案仍为A。这提醒我们:刷到类似题,先问"命题人想考我什么"——是考概念定义,还是考适用边界?