受猫大课程影响,虽然没去听课,不过他课程里面的东西还是蛮有意思,所以就花了点时间写了个迷宫,和猫大的不太一样,我的墙面没有厚度,只是有一个面。先上图:
算法就是网上最常用的迷宫算法
数据结构稍微复杂点,需要构建一个能快速查到当前面周围的边以及这些边周围的面。我最开始想构建一个类似二叉树的数据结构,结果发现我构建不出来。后来我用了两个字典去存储这些关系。
一个80*80的pPlane生成迷宫大概需要0.5秒左右。
后记:数据结构+算法=编程
后续开发:可以考虑生成有厚度的墙面,算法上需要多判断1次面。