第十五章 李林!
    “因为……”

    堆积局部最优解,达到全局最优。

    在意识到自己的思路就是贪心算法后,李林脑子里开始反复回响着刚才第一个男生说的这句话。

    起初他不懂。

    但现在结合自己刚才一步步推导出来的思路,这句看似抽象的概括,开始在他脑海中缓慢地解构。

    “分析lv1”正在悄无声息地全速运转。

    为什么?

    凭什么?

    每一步都只看眼前,选择局部最优,为什么最终不会把路走歪?

    李林的大脑疯狂转动着,甚至忙碌到连呼吸都快要忘记。

    他一直在思考。

    十秒,二十秒,三十秒——

    直到一分钟。

    时间长到让旁边的刘筱雨攥紧了手心,为他捏了一把汗。

    前排站得有些脚酸的几个学生也摇了摇头,交换了一个“果然没戏”的眼神。

    胡云程微微叹了口气,转过身,拿起粉笔准备在黑板上写些什么时——

    李林开口了。

    胡云程的手顿住了,没回头,但粉笔已经不再挪动。

    “因为……如果这道题存在一个最优解,那么在最优解里,一定存在一种方案,是把最小的那块饼干,分给了胃口最小的那个孩子。”

    李林一边说,一边思考。

    声音起初还有些试探,但越往后越稳,思路逐渐顺滑起来,

    “假如在最优解里,最小的饼干a没有分给胃口最小的孩子,而是分给了一个胃口更大的孩子,那就一定存在另一块更大的饼干b,被分给了胃口最小的孩子。”

    胡云程转过身,屏气凝神。

    李林还在说,

    “这时候,把a和b的分配对象交换一下,胃口最小的孩子拿到了更小的饼干,胃口更大的那个拿到了更大的饼干,所有人依然能被满足。交换之后,最优解的性质没有被破坏。所以,总是可以做到让最小的饼干匹配胃口最小的孩子。这一步是安全的,不会偏离最优解。”

    胡云程眼前猛地一亮,他甚至顾不上开口点评,转头就在黑板上哐哐哐写下了几个大字——

    “贪心选择性质”。

    台下传来一阵喧哗,被胡云程抬手压下。

    【叮——】

    【思维方式习得,“高中数学”

    脑海中系统提示音清亮醒目,但李林却无暇顾及。

    因为胡云程甚至都没意识到自己连呼吸都开始变得有些粗重,还在目光灼灼地盯着李林,

    “还有呢?只满足这一个条件就够了吗?就能放心大胆地用贪心算法了吗?”

    “不对,”

    李林摇了摇头,终于在胡云程近乎灼热的目光中否定了自己,

    “光有这个应该还不够。”

    “恩!”

    胡云程的笑意更甚,

    “怎么不够?”

    “因为……”

    见李林有些卡壳,胡云程反而比他表现的更焦急,旁敲侧击道,

    “你刚才说,分配完最小饼干之后,剩下的问题依然是同类型的——是吗?”

    胡云程不等他回到,在黑板上飞快地画了一组示例,

    “如果我们不只有饼干,还有一沓香蕉呢?如果我们不只有小朋友,还有一组大朋友……”

    尽管高强度的思考,已经让李林开始感觉有些头痛。

    但脑海中的思路,一下一下地被胡云程点拨着,根本停不下来。

    他还在思考。

    “不对,不够。”

    “说……说出来!”

    “原问题的最优解,必然是在子问题的最优解基础上,加之刚才满足的那个孩子得到的。如果子问题不是最优的,比如浪费了饼干,那么原问题也不可能达到最优。”

    李林深吸一口气,终于把脑子里最后一点混乱给厘清,

    “也就是说,贪心算法每次做选择后,剩下的问题必须依然是同类型的、同样能用贪心算法解决的子问题。”

    “好!”

    胡云程没等他说完最后一个字,已经转身在黑板上“贪心选择性质”的旁边,又写下了五个大字——

    “最优子结构”。

    【叮——】

    【思维方式习得,“高中数学”

    李林终于得以喘息,松了口气。

    【“高中数学”

    写下最后几个字,粉笔被毫不留情地扔进了粉笔槽里。

    胡云程转回身,此刻脸上是毫不掩饰的痛快。

    只见他抬起手——

    “啪,啪,啪。”

    清脆

本章未完,请点击下一页继续阅读>>