迷宫游戏预习

prime算法

prime算法的思想就是:

设G={V,E}是带权图,V是图G的顶点集,E是边集。

在图中任取一个顶点k作为起始点,令U={k},W=V-U,TE={}(TH为空集),其中W为图中剩余顶点的集合

在有一个U中的顶点,和一个W中的顶点构成 的所有边中,找到一条权值最小的边(u,v),将该边作为最小生成树放入到TE中,并将顶点v加入到集合U中,并从W中删除这个顶点。

重复上一步骤,知道W为空集为止。此时TE中有n-1条边,则T={U,TE}就是G的一颗最小生成树

Prime迷宫生成算法的原理:
(1)初始地图所有位置均设为墙
(2)任意插入一个墙体进墙队列
(3)判断此时墙体是否可以设置为路(判断依据在于上下左右四个位置是否只有一个位置是路)
(4)若设置为路,则将该位置周围(上下左右)的所有墙插入队列,接着执行(5);若无法设置为路,直接执行(5)
(5)从墙队列中删去当前位置所在节点
(6)若墙队列不为空,则从队列中随机选取一面墙重新执行(3),直到墙队列为空

你可能感兴趣的:(游戏,算法,数据结构)