目录
实验要求:
该项目的主要要求是:首先生成一个迷宫,要求随机生成。而生成迷宫有深度优先算法、prim算法、递归分割算法等。老师说建议使用prim算法。这个算法并不难理解,并且生成的迷宫也比较自然随机。其次,要求玩家走迷宫,留下足迹。最后,要求系统使用A*算法寻路,输出最终路径。整个过程要求基本的鲁棒性,也就是生成的迷宫要存在一条正确的道路,并且A*算法能够正确的找到这条路。
算法简介:
prim算法:
算法描述(出自百度百科):
1).输入:一个加权连通图,其中顶点集合为V,边集合为E;
2).初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {},为空;
3).重复下列操作,直到Vnew = V:
a.在集合E中选取权值最小的边<u, v>,其中u为集合Vnew中的元素,而v不在Vnew集合当中,并且v∈V(如果存在有多条满足前述条件即具有相同权值的边,则可任意选取其中之一);
b.将v加入集