塔里木大学:《数据结构》课程教学资源(实验讲义)实训七 图的建立与存储

实训七图的建立与存储一、实训目的1、通过实训,掌握图的建立与存储二、实训内容1、练习用图的邻接矩阵表示法存储图2、练习用图的邻接链表表示法存储图三、实训前的准备1、复习课本的相关内容2、阅读实训指导书3、准备好相关的程序清单四、实训步骤与方法1、图的邻接矩阵表示法算法如下,通过如下算法,完成图的建立#include#include#includeMGRAPH create_mgraphO《/*建立图的邻接矩阵*/int i,j,k;MGRAPH mg;mg.kind=2;printf("\n\n输入顶点数和边数(用逗号隔开):");scanf("%d,%d",&i,&j);fflush(stdin) ;

mg. vexnum=i :mg.arcnum=j;printf("\n\n");for(i=0;i(printf("输入顶点%d的值:",i+1);scanf("%d",&mg.vexs[i]);fflush(stdin):)for(i=0:ifor (j=O:jmg. arcs[i][j]=0:for (k=1;kmg. vexnum| | jmg. vexnum)【printf("输入错,重新输入:");scanf("%d,%d",&i,&j):)mg.arcs[i-1] [j-1]=1;mg. arcs[j-1][i-1]=1:]return mg;1main ()2、图的邻接链表表示法算法如下,通过如下算法,完成图的建立#include

#include#includeADJGRAPH creat_adjgraphO (EDGENODE*p;inti,s,d;ADJGRAPH adjg:adjg.kind = 2:printf("Inln输入顶点数和边数(用逗号隔开):");scanf("%d,%d",&s,&d);fflush(stdin);adjg. vexnum = s:/*存放顶点数在adjg.vexnum中*/adjg. arcnum = d:/*存放边点数在adjg,arcnum 中*/printf("\n\n"):for(i=O;i<adjg.vexnum;i++)(printf("输入顶点%d的值:",i+1):scanf("%d",&adjg.adjlist[i].vertex) ;/*输入顶点的值*/fflush(stdin);adjg. adjlist[il. link = NULL:]printf("\n\n"):for(i =O; i<adjg.arcnum; i++)(printf("输入第%d条边的起始顶点和终止顶点(用逗号隔开):",i+1):scanf("%d,%d",&s,&d):/*输入边的起始顶点和终止顶点*fflush(stdin);

while(s adjg. vexnum Il d adjg. vexnum)【printf("输入错,重新输入:");1scanf("%d,%d",&s,&d);s :d --:p = malloc(sizeof(EDGENODE)):/*建立一个和边相关的结点*p->adjvex = d;/*挂到对应的单链表上*/p->next = adjg.adjlist[s].link;adjg.adjlist[s].link = p;p =malloc(sizeof(EDGENODE));/*建立另一个和边相关的结点*/p->adjvex = s;p->next = adjg.adjlist[d]. link;/*挂到对应的单链表上*/adjg. adjlist[d]. link = p;]return adjg;1main()t1五、实训中出现的问题与解决方法
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训六 树的应用.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训五 二叉树.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训四 串的操作与稀疏矩阵的压缩.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训三 栈与队列的基本操作.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训二 链表的操作.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训一 顺序表的建立与基本操作.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)数据结构实验指导书.pdf
- 塔里木大学:《数据结构》课程教学资源(试卷习题)十套模拟试题(含参考答案).pdf
- 塔里木大学:《数据结构》课程实验教学大纲(数据结构与算法).docx
- 塔里木大学:《数据结构》课程教学大纲(数据结构与算法).docx
- 《C语言程序设计》课程教学课件(PPT讲稿)第09章 用户自己建立数据类型.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第08章 善于利用指针.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第07章 用函数实现模块化程序设计.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第06章 利用数组处理批量数据.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第05章 循环结构程序设计.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第04章 选择结构程序设计.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第03章 最简单的C程序设计——顺序程序设计.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第02章 算法——程序的灵魂.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第01章 程序设计和C语言.pptx
- 《C语言程序设计》课程教学课件(PPT讲稿)第10章 对文件的输入输出.pptx
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训八 图的拓扑排序、最短路径.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训九 基本查找算法.pdf
- 塔里木大学:《数据结构》课程教学资源(实验讲义)实训十 简单内部排序.pdf
- 塔里木大学:《数据结构》课程教学课件(讲稿)第一章 绪论.pdf
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)第二章 线性表.pptx
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)第三章 栈和队列.pptx
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)第四章 串.pptx
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)五章 数组和广义表.pptx
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)第六章 树和二叉树.pptx
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)第七章 图.pptx
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)第九章 查找.ppt
- 塔里木大学:《数据结构》课程教学课件(PPT讲稿)第十章 排序.pptx
