经典永恒puzzle(4)迷宫
目录
最近给8岁的娃买了本复杂迷宫的图书,发现通过微信视频来传授技巧是不太方便的。
于是决定写下本文,让娃她妈先学习本文,再手把手教娃。
我将对部分章节贴上“选读”的标签,缺乏基础的家长直接跳过这些章节即可。
一,普通迷宫
1,普通迷宫的尝试法
一般人解普通迷宫都是“尝试法”:碰到岔路随便试一条,遇到死路往回走。
2,尝试法的本质(选读)
尝试法其实就是DFS深度优先搜索算法。
3,尝试法的优劣
优点:思路简单自然,孩子几乎无师自通可以想到这个方法。
缺点:岔路一多就忘了前面的信息。
4,岔路标记法
一般人试迷宫的时候都是画线,往回走的时候又擦线。
我的建议是只在岔路口做标记。
在岔路口把所有方向画上箭头,然后把尝试的这条路对应的箭头画上标记(我用的是圆圈,其实不画也行,对于简单迷宫无所谓,只有结构复杂的迷宫才需要)。
继续往前走,遇到岔路就标记。
遇到死路就往回退,退回到岔路口就换另外一条路。
遇到新的岔路口要把从哪边来的也画清楚。
为了节省篇幅,我把一些一眼就能看出来的死路直接打叉叉,这样往回走的时候就看得清楚了。
下一个岔路口:
继续:
继续:
这样就找到答案了。
小结:
迷宫太简单了,没太显示出往回走的操作。
画完图之后突然又觉得,要教娃这样的标记法可能也没那么简单。
二,带圈迷宫
迷宫如果带圈,可能会让人不知所措。
我总结出岔路标记法的一个应对方案:只要走到岔路口,一律视为死路,往回走。
三,普通迷宫的另类搜索算法(选读)
如果一个迷宫不含圈,那么可以这么解决:
一直沿着左边界走。
这个方法对于含圈迷宫无效,而且可能没有很简单的应对方案。
这个方法属于规则表述很简单,但是思路其实并不是最自然的,甚至对于不含圈迷宫来说,这个方法的正确性,也不那么显然。
文章来源: blog.csdn.net,作者:csuzhucong,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/nameofcsdn/article/details/124829998
- 点赞
- 收藏
- 关注作者
评论(0)