# Labyrinth
(迷宫算法,随机生成迷宫)
非常简单的随机生成迷宫的算法,用两种方式:Prime,DFS实现
快要大四了,要赶紧复习下数据结构好找工作,哈哈哈哈哈,所以最近在看图相关的算法,光看书没什么感觉,准备实践一下,写个迷宫算法
主要用Prim算法和DFS算法实现了一遍,没有用BFS是因为Prim的思路跟BFS的其实差不太多,但是看别的博客都说Prim比较自然
思路其实大同小异,主要为:常见迷宫(即任意两点间都能够找到路径,且仅有一条成功路径),迷宫可看做一组连通图(用数组储存),默认所有点间都为墙,我们需要做的就是遍历整个图中所有的点,并且不重复访问,在遍历图的过程中将相邻(指的是上下左右相邻)的两个点间的墙随机打通;满足条件的常见算法有:Prim,Kruskal,DFS,BFS,(另外有个博客中写到了递归分割算法,但是因为本菜很懒没有去具体了解)
具体实现效果图如下:
由Prim实现:
![Image text](https://github.com/Bigbao123/Labyrinth/blob/master/prim.png)
由DFS实现:
![Image text](https://github.com/Bigbao123/Labyrinth/blob/master/DFS.png)
贴上博客链接有思路说明,如果写的不好有什么建议也可以给我留言哟:https://blog.csdn.net/qq_38064109/article/details/93554529
如果喜欢可以给我一个小星星呀!
随机生成迷宫的算法,用两种方式:Prime,DFS实现
需积分: 2 180 浏览量
2024-04-10
19:28:03
上传
评论
收藏 251KB ZIP 举报
进击的代码家
- 粉丝: 2203
- 资源: 204
最新资源
- pta题库答案c语言之排序4统计工龄.zip
- pta题库答案c语言之树结构7堆中的路径.zip
- pta题库答案c语言之树结构3TreeTraversalsAgain.zip
- pta题库答案c语言之树结构2ListLeaves.zip
- pta题库答案c语言之树结构1树的同构.zip
- 基于C++实现民航飞行与地图简易管理系统可执行程序+说明+详细注释.zip
- pta题库答案c语言之复杂度1最大子列和问题.zip
- 三维装箱问题(Three-Dimensional Bin Packing Problem,3D-BPP)是一个经典的组合优化问题
- 以下是一些关于Linux线程同步的基本概念和方法.txt
- 以下是一个简化的示例,它使用pygame库来模拟烟花动画的框架.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈