C# 可视化实现迷宫
迷宫算法
设计思想:当用户设定完迷宫时,也就同时产生了一个二维数组,数组中含有两个元素0和1,0表示是通路,1表示是有障碍物不可通过。游戏开始时,由程序按照“右”“下”“左”“上”的顺序依次判断当前方向是否可行,如可行则标记为2,表示已走过的路程,并且把此步的坐标入到栈中。如果不可行则判断下一个方向一次类推;假如最后判断到了“上”方向还是不可行,则将此坐标标记为“3”表示不可行通的点,并且栈要出栈栈顶元素,回退到上一步,在上一步的基础上判断下一个方向是否可行,一次类推。若最终回到起点则表示迷宫无出路,弹出提示,结束程序。
操作步骤:首先按用户输入的行列动态产生行列图片矩阵;下一步由用户为迷宫动态随即的添加障碍物(鼠标单击);如果取消障碍物单击鼠标右键;当迷宫设置完成后,单击菜单中的开始,即可开始游戏,游戏是自动运行的,用户可以暂停,加速减速。