我想用二维数组随机生成水平。0=空,1=墙,如何生成从起点到终点(黄色圆圈,出现在地图上一个随机的自由点)位置的可通路径的水平?
pole = [[0] * 20 for i in range(20)]
for i in range(20):
for j in range(20):
pole[i][j] = random.randint(0, 1)现在,它只是随机化了0和1,然后就出来了:

发布于 2021-12-17 12:27:05
最好的方法是生成一个随机映射,就像你现在做的一样,他们用算法检查开始和结束之间是否有一个开放的路径。如果没有,只需生成一个新的地图并再次检查。
一种“洪水填充”算法,您从一开始就开始填充,并查看填充是否到达终点。有关算法帮助,请参见:
https://stackoverflow.com/questions/70392733
复制相似问题