生成迷宫模板(再次改进)

改编
发布于:2023/07/02 更新于:2023/07/02 192
感谢原作:自动生成迷宫模板
4 4 6
Scratch作者 ZX
ZX

Scratch作品简介

想要保存的进源然后按上面加载项目右边绿色的保存,然后在重新打开下载文件了。 把原作改进了一下,墙壁不再凹凸不平了,哦还有路宽也随着墙壁厚度定死了,还增加了起止点。 不过就是墙壁厚度在7以下就出Bug了,可能是造型里基础墙壁太厚的原因,回去再研究一下。 算法是模拟了广度优先搜索的过程。 深度优先搜索和广度优先搜索的区别: 深度优先搜索:在小小的数据里面找呀找呀找,找小小的路线,走常常的路。 广度优先搜索:像走迷宫一样走到头了就返回换条路接着走。 比如下二叉树: 1 2 3 4 5 6 7 深度优先搜索:1→2→3→4→5→6→7 广度优先搜索:1→2→4→5→3→6→7 (广度优先搜索:1空缺→2空缺→4到头→2空缺→5到头→2到头→1空缺→3空缺→6到头→3空缺→7到头→3到头→1到头) 两种搜索方式要看情况选择用哪个,但是对于scratch的一维列表来说,两者几乎没有任何区别,时间复杂度为O(n)。

Scratch操作说明

滑杆可以调迷宫生成的粗细,按下鼠标来绘制一条路线,生成迷宫的时候会让出这条路线(尽量慢点画,不然要是画出来的线颜色不均匀就侦测不出来了),再按下鼠标设置红色星标,迷宫生成的时候会自动避开红色星标(甚至你可以用红色星标来为迷宫设置一条固定路线),按下空格生成。生成迷宫后按下a键出现绿色星标的时候按下鼠标可以补充迷宫,比如用红色星标设置出了一条路后只生成了红色星标一遍的迷宫,这是可以用a键补充另一边的迷宫。 (迷宫生成的墙壁一定是在墙壁厚度的倍数上) 生成的迷宫不一定有解。
查看积木

评论区

登录之后才能评论Scratch作品哦
1919809 个月前

nb

Ancestors10 个月前

请问作者几岁?

Ancestors10 个月前
@Ancestors

要是比我小的话,那我就要崩溃了

ZX10 个月前
@Ancestors

额13,

hellow1 个月前
@ZX

幸好比我大

ZX1 个月前
@hellow

6

帅锅00910 个月前

ZX10 个月前
@帅锅009

你是懂a是怎么用的

圆周率31410 个月前

6666666

ZX10 个月前
@圆周率314

歪杰古德

ZX10 个月前
@圆周率314

就是画得有点歪了,下回得画细点

圆周率31410 个月前
@ZX

呵呵

圆周率31410 个月前
@ZX

圆周率31410 个月前
@ZX

……

ZX10 个月前
@圆周率314

你是不是故意找茬?

ZX10 个月前
@圆周率314

其实你按a点击其他地方可以让迷宫更完整一些

cwa10 个月前

ZX10 个月前
@cwa

更新了哦

cwa10 个月前
@ZX

唔唔唔唔唔唔唔唔袜袜袜袜袜

O泡果奶10 个月前

6

ZX10 个月前
@O泡果奶

更新了哦

O泡果奶10 个月前
@ZX

又更了

ZX10 个月前
@O泡果奶

啊对对对

ZX10 个月前
@O泡果奶

又更新了一个固定路线

圆周率31410 个月前

666

ZX10 个月前
@圆周率314

重新发布版本了,看看操作说明。新增了补画迷宫的功能。

圆周率31410 个月前
@ZX

OK

ZX10 个月前
@圆周率314

不过迷宫不一定有解这个怎么解决呢?

圆周率31410 个月前
@ZX

那就无解呗

圆周率31410 个月前
@ZX

就像是x=2/a当a=0时无解,你问我无解咋办?

ZX10 个月前
@圆周率314

关键是如果用户不设置a为0,但是计算机求解的时候把x算错了,就是生成的时候有没有方法让生成过去的道路如果无解那就绕过去

ZX10 个月前

找茬式画法

ceshi110 个月前

很强,不过这迷宫貌似没有起点终点?或者说只有起点,尽头全是死路?

ZX10 个月前
@ceshi1

起点自己设置,终点周围不是有出口么?这个是生成的,不是游戏有固定的起止点

ceshi110 个月前
@ZX

固定起止点怎么搞

ZX10 个月前
@ceshi1

设置一个起始点,一个终止点,寻路的时候碰到了就让开

ZX10 个月前
@ceshi1

弄好了,看操作说明