- 139
- 0
- 约1.66万字
- 约 14页
- 2016-12-07 发布于湖北
- 举报
姓名 学号
实验项目 图的创建及应用(I) 实验内容 1.编写算法,由依次输入的顶点数目、弧的数目、各顶点的信息和各条弧的信息建立有向图的邻接矩阵和邻接表存储结构并输出显示。(题集150页5.3扩充)
存储结构定义分别参见教材第161页和第163页。
2.试基于图的深度优先搜索策略写一算法,判别以邻接表方式存储的有向图中是否存在由顶点vi到顶点vj的路径(i≠j)。注意:算法中涉及的图的基本操作必须在此存储结构上实现。(题集第49页7.27) 算法设计与程序实现: 算法分析 本次实验主函数采用循环结构主函数调用自己编写的DataStructure_Graph.h中的相关功能函数
主程序结构
1、邻接矩阵表示法:
1、创建有向图; //调用CreateGraph(MG)创建有向图
2、显示图信息; //调用DisplayGraph(MG) 显示图信息
3、返回上一界面;
2、邻接表表示法:
1、创建有向图; //调用CreateGraph(ALG)创建有向图
2、显示图信息;//调用DisplayGraph(ALG) 显示图信息
3、返回上一界面;
3、基于深度优先搜索判断是否存在指定位置的路径:
1、使用已创建的邻接表表示的图进行搜索判断;//调用exist_path_DFS(ALG, i, j)搜索
2、创建新的图进行搜索判断;//创建新的有向图,并调用exist_path_DFS(R_ALG, i, j)搜索
3、返回上一界面;
4、退出程序
创建图的算法分析
邻接矩阵结构创建图:
首先由键盘输入待创建的图的顶点数,弧数以及是否含有弧信息,然后由顶点数控制循环构造顶点向量,接着由顶点数控制循环初始化邻接矩阵(adj=0,info=NUll),再次输入弧信息,此时将输入的弧的弧头和弧尾与顶点信息进行匹配,从而确定弧在邻接矩阵中的位置(有弧时为1),如果输入的弧有信息的话,在进行有无弧的判断写邻接矩阵时进行绑定,有键盘输入即可。
邻接表结构创建图:
首先由键盘输入待创建的图的顶点数,弧数,然后由顶点数控制循环初始化顶点信息(顶点数据信息firstarc = NULL)),接着由弧数控制循环输入弧头和弧尾顶点,与之前建立的顶点信息进行匹配,从而确定弧头和弧尾的位置信息,此时生成一个弧结点类型的存储空间,采用单链表中在表头插入新结点的方法,将弧的信息插入到顶点的第一条弧之后,如同此法,对每个顶点都进行以上操作,这就建立了图的邻接表结构。
深度优先搜索判断是否存在指定位置的路径算法分析
首先判断指定的两个位置向量是否相等,如果相等,则肯定有路径相连,否则从指定的弧头结点开始搜索,将该顶点访问过的弧的访问标志置1,任何到该弧的弧头顶点进行如上操作,当搜索该顶点的所有弧都没有找到则返回0,然后返回上一顶点,对该顶点的其他弧进行访问。当指定顶点的所有弧都被搜索访问过都没有找到,此时程序返回0。 核心程序 此程序中用到的自己编写的头文件以在下面给出,而头文件的说明则在主函数中文件包含部分的注释处,核心程序如下:
1.主函数如下:
#include iostream //输入输出流库头文件
#include fstream //文件操作流库头文件
#include windows.h //cmd窗口设置函数头文件
#include ADT.h //数据结构中相关结构体类型定义及相关数据类型定义
#include DataStructure_Graph.h //数据结构第七章图相关函数的定义及声明
using namespace std;
void main_menu(void);
void minor_menu1(void);
void minor_menu2(void);
void minor_menu3(void);
int main(void)
{
system(title 数据结构实验 实验六:图的创建及应用(I)); //设置cmd窗口标题
system(color F1); //设置控制台窗口的背景色和前景色
system(date /T); //输出当前的日期
while (1)
{
main_me
您可能关注的文档
- 实例图解-土建工程施工工序内容及措施.docx
- 实训四 智能家居实训.doc
- 实时随钻测井中精确构造倾角解释.doc
- 密码学的未来.pptx
- 实训项目一 离合器的拆装与调整.docx
- 实验1 序列的卷积运算test.ppt
- 密码学及安全应用9.ppt
- 天津别墅项目.pptx
- 尿素合成塔大件设备吊装方案-王贤红.doc
- 实验2 Lingo求解运输问题和整数规划.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 西方经济学(第三版)许纯祯PPT全套课件.pptx
- 山东科技版劳动实践指导手册五年级第8课传统工艺制作我是非遗小传人扎染 课件.ppt
- 分项工程量清单综合单价分析表.xls VIP
- 《智慧养老模式在养老服务中的技术创新与产业协同研究》教学研究课题报告.docx
- 人教版(2024)八年级上册英语Unit 8 Let's Communicate! 教案(共6课时) .pdf
- 3512B柴油机零件手册.pdf VIP
- (新教材)2026年春期教科版二年级下册科学教学计划及进度表.pdf
- BIQS2.0 进阶版学习教材V4.0.pdf VIP
- 作物育种学(刘裕强)第十四章 群体改良与轮回选择.ppt VIP
- 2024茂名市电白区电城镇社区工作者招聘考试试题.docx VIP
原创力文档

文档评论(0)