奥数用手做来之“最短路径” (上)

Posted 学前奥数启蒙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了奥数用手做来之“最短路径” (上)相关的知识,希望对你有一定的参考价值。


最短路径——先找出所有路径

      CMO大奖已公布,恭喜上榜的牛蛙们!回头看自己家的青蛙,唯有努力再努力! 关于今天的主题思与乐考虑了很久,最短路径问题虽然用枚举法可以轻松搞定,但要给学前娃讲着实有点为难。不过还好家里玩具储备多啊,总算是找到一个合适的,下面思与乐就带大家用手做出来这个最短路径问题~

奥数用手做来之“最短路径” (上)


|    真题    |

       最短路径问题是图论研究中的一个经典算法问题,旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。

        最短路径的变形题基本上就是把路径的长短替换为路径上的各种加权值,如:时间、花费等等。另外,在拓扑结构上的,最短路径问题可以分成两大类型,我们今天先给大家讲一种普通的,后面会再介绍一种特殊的拓扑结构。

       今天我们要给大家介绍的就是迎春杯面向一二年级学生开设的“数学花园探秘”小低年级组的笔试题第十一题。


奥数用手做来之“最短路径” (上)
奥数用手做来之“最短路径” (上)


奥数用手做来之“最短路径” (上)

这道题有点难啊,岔路也太多了吧。。。

其实不然,这道题虽然分叉路多,但数字相差比较大,很容易看出来最短路径。但如果数字相差不大的情况下,最短路径问题又怎么解决呢?

奥数用手做来之“最短路径” (上)
奥数用手做来之“最短路径” (上)



| 所有的路径 |

奥数用手做来之“最短路径” (上)

最短路径——先找出所有路径

奥数用手做来之“最短路径” (上)

        我们前面在玩复迷宫问题的时候,已经用包装袋和丝带分别实现了管道迷宫和乐高迷宫的多重路径查找,希望孩子们已经基本掌握了不重复不遗漏找路径的方法。解决最短路径问题的基础就是——不重复不遗漏找出所有路径!


奥数用手做来之“最短路径” (上)
拿出我们的磁力棒,准备开始啦~
奥数用手做来之“最短路径” (上)
奥数用手做来之“最短路径” (上)

1.    首先我们用三种不同颜色的磁力棒和铁球摆一个像这样的形状,注意一边是4,一边是2,一边是1。然后问小朋友:从左下角的点走到右上角,怎么走最快?

奥数用手做来之“最短路径” (上)

2.    一般来说小朋友都会答对的,然后把这个图形摆到白纸上,用标号把几个钢珠标注出来。再用树状图,画出它们的链接线。最后让小朋友计算一下:这两种走法分别需要用几步呢?

奥数用手做来之“最短路径” (上)

3.    如果小朋友十以内加法没问题了,那么我们再加两种颜色的磁力棒和一颗钢珠(别看只加了一层,这就涉及到了多重路径的核心问题)。问问小朋友:如果从钢珠3出发,那么有几条路可以通到钢珠4?如果从钢珠2出发呢?

       有些小朋友可能不知道可以从钢珠3到钢珠2,也可以从钢珠2到钢珠3,直接奔目标4了,这里就需要家长引导一下。

奥数用手做来之“最短路径” (上)

4.    这时候问问小朋友:如果从钢珠1到钢珠4哪条路径最短呢?有些小朋友很聪明,立马给你找出一条来。这时候你要不动声色,说:让我们画图算一下这个是不是最短路径。然后继续补充树状图,画出它们的连接线。最后让小朋友计算一下:这四种走法分别需要用几步呢?

奥数用手做来之“最短路径” (上)

        通过这个树状图,小朋友会发现其实有两条路径1234和124的距离加起来都是5,它们都是最短路径。这时候就可以跟小朋友说:有时候一眼看去像是对的,其实不然。还是要通过画图计算,认真求解才能得到正确答案。



|    后记    |


        找出所有的路径是这次的奥数用手做出来的核心,而利用枚举树记录所有路径的链接,是解决这个核心问题的实现方法。

       后面我们还会用枚举树来解决其他的问题,希望大家慢慢能掌握这个方法。

      

进阶:等小朋友上学之后,拿出磁力棒做出这样的图形,可以增加一些可以变化,但记得要设计出两条一样长度的最短路径:)



家长们:

      我们这次的奥数用手做出来特意设计了两条一样长度的最短路径,除了解释枚举树的必要性外,也是想着挫一挫奥数小能手的锐气(当然解答正确的牛娃例外:P)。

      通过这么一段时间的学前奥数启蒙,小朋友们在解决这些奥数问题上多多少少已经找到感觉。但要从这种感觉转换为稳定的解题能力,我们还有很多路需要走。希望思与乐能陪着你们走到奥数的神秘花园中去:)

       这次我们做了一种普遍的最短路径问题,下次思与乐将带大家看看另一种特别的最短路径问题——棋盘中的最短路径。


——思与乐

以上是关于奥数用手做来之“最短路径” (上)的主要内容,如果未能解决你的问题,请参考以下文章

在解决最短路径优化问题中,Dijkstra算法都有哪些优.缺点?

neo4j寻找节点间的最短路径

数据结构与算法图最短路径算法 ( Floyed 算法 | 图最短路径算法使用场景 | 求解图中任意两个点之间的最短路径 | 邻接矩阵存储图数据 | 弗洛伊德算法总结 )

用Dijkstra算法求最短路径的MATLAB程序

每日干货|八上数学:一张图彻底搞懂最短路径问题

多源最短路径--Floyd-Warshall算法