返回

第六十三章 动物园的灾难

首页
关灯
护眼
字:
上一页 回目录 下一章 进书架
    第六十三章 动物园的灾难 (第2/2页)



    [“lion”,”antelope”,”bear”,”chicken”,”cow”]

    “你必须从左到右扫描,并且记录下哪些动物吃掉了相邻的其它动物”。

    “好的”,杨成拿到这个问题就感觉很轻松。

    这个算法将反复地从列表左侧向右侧扫描,一旦发现了食肉动物,就检测该动物的左右两边(相邻)是否有食草动物,如果有,就记录这次“吃掉”事件,并且从列表中移除该食草动物,如果没有发现目标,就跳到下一个食肉动物,继续检测相邻动物。这个扫描过程将持续到,整个遍历都没有发生“吃掉”事件为之,算法结束。

    首先,lion(狮子)发现了antelope(羚羊),把它吃掉。

    然后,lion(狮子)发现了bear(熊),两强相争,必有一伤,所以打不起来。

    接着,bear(熊)发现了chicken(鸡),把它吃掉,从列表移除。

    然后,又从lion(狮子)开始,它发现了老对头bear(熊),直接略过。

    bear(熊)发现有一头奶牛(cow)在附近,把它吃掉。

    最后又从lion(狮子)开始,此时除了狮子就只有熊,再也没有“吃掉”事件,算法结束。

    所以,整个过程按照先后顺序,一共记录了三次“吃掉”事件。

    1.狮子吃羚羊

    2.熊吃小鸡

    3.熊吃奶牛

    等到杨成写完这个功能,他不由得长吁一口气,擦了把汗。

    “这真是动物园的一场灾难!”
上一页 回目录 下一章 存书签