某数据结构课程设计公园导游图.docx 立即下载
2025-08-27
约2.2万字
约39页
0
25KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

某数据结构课程设计公园导游图.docx

某数据结构课程设计公园导游图.docx

预览

免费试读已结束,剩余 34 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

某数据结构课程设计公园导游图

第一篇:某数据结构课程设计公园导游图数据结构实验报告班级:06软件工程姓名:周邓雄学号:06517037实验四:图(内容:某公园导游图)一、问题描述:公园导游系统:给出一张某公园的导游图,游客通过终端询问可知︰从某一景到另一景点的最短路径。游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。二、设计描述:1.输入导游图的算法(存储方法).本程序特地设计函数voidinitgraph()用于实现键盘输入图的结构;2.可访问导游图中任一景点的算法.为此设计了函数voidvist(GraphMatrixgraph)用于实现访问任一景点的信息;3.最短路径从一景点到另一景点的算法。利用floyd算法-实现每一对景点间的最短路径。并利用voidoutgraph()函数实现显示起始点和终点间的最短路径和其长度;三、程序清单:#includeusingnamespacestd;#include#defineMAXVEX100#defineMAX999typedefcharVexType;数据结构实验报告班级:06软件工程姓名:周邓雄学号:06517037typedeffloatAdjType;typedefstruct//定义图结构{intn;/*图的顶点个数*/VexTypevexs[MAXVEX];/*顶点信息*/AdjTypearcs[MAXVEX][MAXVEX];/*边信息*/}GraphMatrix;GraphMatrixgraph;//定义一个图graphtypedefstruct//定义最短路径ShortPath结构{AdjTypea[MAXVEX][MAXVEX];/*关系矩阵A,存放每对顶点间最短路径长度*/intnextvex[MAXVEX][MAXVEX];/*nextvex[i][j]存放vi到vj最短路径上vi的后继顶点的下标值*/}ShortPath;ShortPathpath;//定义路径pathvoidfloyd(GraphMatrix*pgraph,ShortPath*ppath)//floyd算法-用于实现每一对景点间的最短路径{inti,j,k;for(i=0;in;i++)for(j=0;jn;j++){if(pgraph->arcs[i][j]!=MAX)ppath->nextvex[i][j]=j;数据结构实验报告班级:06软件工程姓名:周邓雄学号:06517037elseppath->nextvex[i][j]=-1;ppath->a[i][j]=pgraph->arcs[i][j];}for(k=0;kn;k++)for(i=0;in;i++)for(j=0;jn;j++){if(ppath->a[i][k]>=MAX||ppath->a[k][j]>=MAX)continue;if(ppath->a[i][j]>ppath->a[i][k]+ppath->a[k][j]){ppath->a[i][j]=ppath->a[i][k]+ppath->a[k][j];ppath->nextvex[i][j]=ppath->nextvex[i][k];}}}voidoutgraph()//out()函数用于实现显示起始点和终点间的最短路径和其长度{intc,b,i;cout//输入要查找起始点和终点(本程序限于编号(int型))cout>c;cin>>b;i=path.a[c][b];//通过path.a[c][b]把路径长度赋给i数据结构实验报告班级:06软件工程姓名:周邓雄学号:06517037cout//输出路径长度cout//此处输出路径的第一个编号c=path.nextvex[c][b];for(;c!=b;c=path.nextvex[c][b])//循环顺序输出路径始点和终点之间的景点编号cout//再输出路径的最后一个编号cout//该函数用于实现键盘输入图的结构{inti,m,j;printf(“请输入公园景点的个数:”);//图结点的个数赋给graph.nscanf(“%d”,&m);graph.n=m;for(i=0;i//循环输入结点顶点信息{printf(“请输入第%i个景点信息:”,i);//为了简明起见此程序结点顶点信息限于字符型cin>>graph.vexs[i];}printf(“请输入公园的邻接矩阵的信息n”);//循环输入图的邻接矩阵信息(也就是输入一个二维数组)for(i=0;i班级:06软件工程姓名:周邓雄学号:06517037for(j=0;jprintf(“请输入第%d行,第%d列的元素:”,i+1,j+1);cin>>graph.arcs[i][j];}}voidvist
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

某数据结构课程设计公园导游图

文档大小:25KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用