zoukankan      html  css  js  c++  java
  • 迷宫算法

    深度优先算法的核心是(翻译的维基):
    1、将起点作为当前格并标记
    2、当还存在未标记的格时
    ——1、如果当前格有未标记的邻格
    ————1、随机选择一个未标记的邻格
    ————2、将当前格入栈
    ————3、移除当前格与邻格的墙
    ————4、标记邻格并用它作为当前格
    ——2、反之,如果栈不空
    ————1、栈顶的格子出栈
    ————2、令其成为当前格
    ——3、反之,随机选择一个格子为当前格并标记

    通俗的说,就是从起点开始随机走,走不通了就原路返回,从下一个能走的地方再开始随机走。

    随机prim算法的核心是(翻译的维基):
    1、让迷宫全是墙
    2、选一个格作为迷宫的通路,然后把它的邻墙放入列表
    3、当列表里还有墙时
    ——1、从列表里随机选一个墙,如果它对面的格子不是迷宫的通路
    ————1、把墙打通,让对面的格子成为迷宫的通路
    ————2、把那个格子的邻墙加入列表
    ——2、如果对面的格子已经是通路了,那就从列表里移除这面墙

    通俗的说,就是在所有可以走的地方上随机挖洞,创造出新的可以走的地方。

    参考链接:

    https://en.wikipedia.org/wiki/Maze_generation_algorithm

    https://en.wikipedia.org/wiki/Talk:Maze_generation_algorithm

  • 相关阅读:
    mysql的增量备份与全备的脚本
    mysql5.7的密码
    mysql 修改root密码
    centos7上面安装MySQL
    centos7上开启路由转发
    python基础之3
    python基础之2
    深入浅出FPGA-2-让source insight 支持verilog HDL
    Verilog 1995 VS Verilog 2001
    环境搭建基础知识2(sublime text3中配置verilog语法高亮)
  • 原文地址:https://www.cnblogs.com/energy1010/p/6919225.html
Copyright © 2011-2022 走看看