ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:21.78KB ,
资源ID:22881938      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22881938.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构课程设计图的实现文档格式.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构课程设计图的实现文档格式.docx

1、do *无向图的基本操作及应用*n 1 创建无向图的邻接矩阵 2 创建无向图的邻接表 3 无向图的深度优先遍历 4 无向图的广度优先遍历 *ncinn;switch(n)case 1:CreatUDG_M(MG);break;case 2:CreatUDG_ALG(ALG);dispgraph(ALG);case 3: dfstraverse(ALG);case 4:BFSTraver(MG);default:if (n!=5)错误,重新输入nwhile(n!=5);void UDN() MGraph MG;do *无向网的基本操作及应用*n 1 创建无向网的邻接矩阵 2 创建无向网的邻接表

2、3 prim算法求最小生成树 4 kraskal算法求最小生成树 *nCreateUDN_M(MG); CreateUDN(ALG);dispUDN(&ALG);prim(MG);Kruskal(MG);void DG() *有向图的基本操作及应用*n cout 1 创建有向图的邻接矩阵 2 创建有向图的邻接表 3 拓扑排序 4 退出CreatDG_M(MG); CreatDG_ALG(ALG);CreatDG_ALG(ALG);TopologicalSort(ALG);=4)=4);void DN() PathMatrix p1; ShortPathTable d1; dist2 d; pa

3、th2 p; *有向网的基本操作及应用*n 1 创建有向网的邻接矩阵 2 创建有向网的邻接表 3 关键路径 4 单源顶点最短路径问题 5 每对顶点最短路径问题 6 退出 CreateDNG_M(MG); CreateDN(ALG);dispDN(&CreateDN(ALG);CriticalPath(ALG); ShortestPath(MG,1,p1,d1);case 5:Floyd(MG,p,d);=6)=6);void main()ShowMainMenu();UDG(); UDN();DG();DN();/Graph.h(图的定义)#define MAXVEX 30#define MA

4、XCOST 1000typedef int InfoType;typedef structVertexType vexsMAXVEX; int arcsMAXVEXMAXVEX; int vexnum,arcnum;MGraph;typedef struct arcnodeint adjvex;/邻接点序号int w;/边或狐上的权InfoType *info;struct arcnode *next;ArcNode;typedef struct vnode VertexType data; /顶点信息int indegree;ArcNode *firstarc; /指向下一个边结点Vnode

5、,AdjListMAXVEX;AdjList vertices;int vexnum,arcnum;ALGraph;/UDGraph.h(无向图的基本操作及应用)void CreatUDG_M(MGraph &G) int i,j,c;请输入顶点数,边数 :G.vexnum;G.arcnum;请输入结点信息,如“1 2 3 .endl;for(i=1;i=G.vexnum;i+) G.vexsi;for(j=1;jj+)G.arcsij=0;for(c=1;c起点序号,终点序号:,c);ij; G.arcsij=1; G.arcsji=1;创建的邻接矩阵为:for(int i=1;for(in

6、t j=1;G.arcsijG.verticesi.data; G.verticesi.firstarc=NULL; printf(,i);sd; p=(ArcNode *)malloc(sizeof(ArcNode); q=(ArcNode *)malloc(sizeof(ArcNode); p-adjvex=d; q-adjvex=s;p-next=G.verticess.firstarc; /p插入顶点s的邻接表中 G.verticess.firstarc=p; q-next=G.verticesd.firstarc; /q插入顶点d的邻接表中 G.verticesd.firstarc=

7、q;void dispgraph(ALGraph G)int i; ArcNode *p;图的邻接表表示如下:);printf( %d,%c=,i,G.verticesi.data); p=G.verticesi.firstarc; while (p!=NULL)%d,p-adjvex);p=p-next;n/int visit20;void dfs(ALGraph G,int v)/从顶点v出发深度优先搜索 visitv=1;G.verticesv.data;ArcNode * p;p=G.verticesv.firstarc;while(p) if(visitp-adjvex!=1)dfs

8、(G,p-/whilevoid dfstraverse(ALGraph G)/对一个图进行深度优先搜索 int v;for(v=1;v0)if(visitw=0)visitw=1;q,w);w=NextAdjVex(G,u,w);/UNGraph.h(无向网的基本操作及应用)void CreateUDN_M(MGraph &int i,j,k,n;请输入顶点数和边数输入顶点G.arcsij=999;输入边的起点到终点的序号及权值for(k=1;kG.arcsij=n;G.arcsji=G.arcsij;/建立无向网的邻接矩阵存储结构/void CreateUDN(ALGraph &G) / 邻

9、接表建立无向网 int i,s,d,w1;ArcNode *p,*q;输入节点数和边数G.vexnum输入顶点,如“1 2 3.”i+) / 输入顶点 / 首先初始化为NULL dw1; / 输入一条边依附的起点序号和终点序号 p =(ArcNode *)malloc(sizeof(ArcNode); q =(ArcNode *)malloc(sizeof(ArcNode);info=(InfoType *)malloc(sizeof(InfoType);adjvex = d; / 保存该弧所指向的顶点位置 adjvex = s; *(p-info) = w1; / 保存权值到一个结点里 *(q- /保存权值到一个结点里 void dispUDN(ALGraph *G) /* 打印无向网每个结点的单链表 */int i, j;起点 权值 终点for(i = 1 ; i vexnum ; i+) while(G-verticesi.firstarc-next)G-verticesi.dataadjvex;*(G-info)verticesj.dataverticesi.firstarc = G- vertic

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1