【图的算法】深度优先,老鼠走迷宫,找到最短通路,C/C++代码实现

本文介绍了如何利用C/C++的深度优先搜索算法解决老鼠走迷宫问题,要求找到从起点到终点的最短路径。迷宫用二维矩阵表示,存在8个方向的行走可能。示例展示了两种情况,一种有最短路径,一种无路径。代码实现包括深度优先搜索算法和必要的剪枝处理。
摘要由CSDN通过智能技术生成

问题描述:


一般的迷宫可以表示为一个二维平面模型,将迷宫的左上角作为入口,右下角作为出口,
设计一个10*10矩阵来表示迷宫。二维矩阵中,1表示“墙壁”与“障碍”、0表示“通路”。
假设1只老鼠从起点出发,可向“上、下、左、右、右上、右下、左下、左上”等8个方向行走,
请规划一条由起点到终点的路径并输出。要求:
1.请利用C/C++/Python 语言实现,数据结构由同学自选;
2.程序中需要有文字用户界面和必要的提示;
3.迷宫可由系统自动生成也可由测试员进行输入;
4.如果有路径则利用二维数组输出路径、如果自动生成的迷宫无路径则系统输
出NO PATH;
5.程序需要能对错误进行提示;
6. 如果每次探索的路径均为从起点到终点的最短路径,则负责程序设计的同学
本题目满分;

示例1:

输入:

0 0 1 1 0 0 0 0 0 0
1 0 0 1 0 0 0 0 0 0
1 1 0 1 1 0 0 0 0 0
0 1 0 0 1 1 0 0 0 0
0 1 1 0 0 1 0 0 0 0
0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 1 1 1 0 0
0 0 0 1 0 0 0 1 0 0
0 0 0 1 1 1 0 1 1 0
0 0 0 1 0 0 0 0 0 0

输出:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五木大大

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值