- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[学习总结]数据结构课外实践
数据结构课外实践报告
项 目 名 称: 安阳师院校园导游程序
所 在 班 级: 2011级java 2班
小 组 成 员: 全 政 何 壮 孙 超
指 导 教 师:刘运通
起 止 时 间:第16周
项目基本信息
项目名称 安阳师院校园导游程序 项目简介 实现导游程序,至少包括以下知识:
(1) 邻接表
(2) 树的遍历
(3) 拓扑排序算法;
(4) 求解关键路径;
(5) 求解最短路径。
(6) 无向图 小组成员 全政(组长),孙超,何壮 任务分工 全政:制作PPT、树的遍历
孙超:最短路径算法的编程,队列入栈与出栈的编写
何壮:最短路径算法、主类编写,撰写报告册
课外实践评定成绩记录
指导教师意见 系统完成情况:优 良 中 差 报告完成情况:优 良 中 差 答辩评定成绩 团队整体成绩: 成员成绩 全政 何壮 孙超 综 合 成 绩
问题描述及分析
问题描述:实现安阳师院导游程序,需要满足以下功能
用无向网表示校园景点平面图,图中顶点表示主要景点,存放景点的编号、名称、简介等信息,图中的边表示景点间的道路,存放路径长度等信息。要求能够回答有关景点介绍、游览路径等问题。[基本要求](1) 查询各景点的相关信息;(2) 查询图中任意两个景点间的最短路径。(3) 查询图中任意两个景点间的所有路径。(4) 增加、删除、更新有关景点和道路的信息。() 求多个景点的最佳(最短)游览路径。
根据系统功能结构图的描述,可以构造出该系统的几个基本的函数,其方法名和功能如表1所示。
函数 功能 typedef struct ArcNode 邻接表 typedef struct{ int weight;
int info;} 邻接矩阵,存储景点距离、路线 void Create(ALGraph *tu) 建立邻接链表,实现景点的创建 void Rclear(MGrph *Ttu) 初始化邻接矩阵,(路径数与景点数已知)将矩阵路径长度初始化为Max,标志位初始化为0 void Turn(ALGraph *tu,MGrph *Ttu) 将邻接链表转换成邻接矩阵 void Rset(ALGraph *tu) 将邻接表中结点的标志以及边的标志初始化为0(路径数与景点数已知) void Rbuild(ALGraph *tu) 景点规划(最小生成树) void main() 信息的输入输出
表1 函数功能表
功能模块
图1 系统功能结构图
数据结构描述、代码分析
(1)定义一个权值的最大值、图的最大顶点数、队列的最大容量。
#includestdio.h
#includestdlib.h
#includestring.h
#define MaxSize 100
#define Max 32767
(2)创建邻接表、邻接矩阵、邻接链表、最短路径结点、拓扑排序用栈、深度遍历生成树
//////////////////////邻接表
typedef struct ArcNode
{
int adjvex;
int info; ///////标志是否被访问过
int weight;
struct ArcNode *nextarc;
}ANode;
typedef struct
{
int info; ///////标志是否被访问过
char name[50];
ANode *firstarc;
}VNode,AdjList[MaxSize];
typedef struct
{
AdjList vertices;
int vexnum,arcnum;
}ALGraph;
////////////////////////邻接矩阵
typedef struct
{
int weight;
int info; ///////0,表示无路径,1表示有路径
} AdjMatrix[MaxSize][MaxSize];
typedef struct
{
char names[MaxSize][50];
AdjMatrix arcs;
int vexnum,arcnum;
}MGrph;
//////////////
您可能关注的文档
- [学习总结]Yoga产品培训-正式版.ppt
- [学习总结]android开发培训课件.pdf
- [学习总结]《合同法》个人总结版.doc
- [学习总结]公路施工实习指导书.doc
- [大学课件]第一课--柯布西耶及其作品.ppt
- [学习总结]PowerPoint的讲义.ppt
- [学习总结]医院放射科筹备资料.doc
- [学习总结]大学生创业培训.ppt
- [学习总结]国际空运知识.pdf
- [学习总结]ps学习例子.doc
- 2025年广播电视编辑记者考试历年机考真题集及答案详解一套.docx
- 2025年广播电视编辑记者考试历年机考真题集及答案详解【必刷】.docx
- 2025年广播电视编辑记者考试历年机考真题集及完整答案详解一套.docx
- 2025年广播电视编辑记者考试历年机考真题集及完整答案详解【夺冠系列】.docx
- 2025年广播电视编辑记者考试历年机考真题集含完整答案详解(夺冠系列).docx
- 小学四年级上册必背古诗综合练习题(答案).docx
- 2025年广播电视编辑记者考试历年机考真题集及答案详解【名师系列】.docx
- 2025年广播电视编辑记者考试历年机考真题集及参考答案详解(综合卷).docx
- 2025年广播电视编辑记者考试历年机考真题集1套附答案详解.docx
- 2025年广播电视编辑记者考试历年机考真题集【培优B卷】附答案详解.docx
文档评论(0)