小时候玩过一款3D版迷宫,那时还是功能机时代,黑白界面拼凑的伪3D效果还是给我带来了很多快乐。后来出现了智能机,却再也没找到过那样纯粹的迷宫游戏。总算自己找时间做一个出来。
本文主要介绍一下深度优先,Kruskal,Prim几种方式生成迷宫地图的算法,还有一种递归算法,生成的迷宫多长直路,不太适合纯粹的迷宫,所有暂时没有去实现。源码地址:https://github.com/LogicMonst/mazepath
深度优先算法:
思路:从起点出发,随机选择周围没有被遍历过的点,如果周围都被遍历过,则回溯到上一个遍历点,随机选择周围没有被遍历过的点,如此往复,直到遍历所有点。
Kruskal算法:
思路:来源于最小生成树的Kruskal算法。 算法导论里说