数据结构实验报告4(中央电大)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

福建广播电视大学实验报告(学科:数据结构)姓名单位班级学号实验日期成绩评定教师签名批改日期

实验名称:实验四图的存储方式和应用

4.1建立图的邻接矩阵

【问题描述】

根据图中顶点和边的信息编制程序建立图的邻接矩阵。

【基本要求】

(1)程序要有一定的通用性。

(2)直接根据图中每个结点与其他结点的关联情况输入相关信息,程序能自动形成邻接矩阵

【测试用例】

【实现提示】

(1)对图的顶点编号。

(2)在上图中,以顶点1为例,因为顶点2,3,4与顶点1关联,可以输入信息1 2 3 4,然后设法求出与顶点1关联的结点,从而求得邻接矩阵中相应与顶点1的矩阵元素。

实验图4-1

设计程序代码如下:

#include

#define MaxVertexNum 5

#define MaxEdgeNum 20

#define MaxValue 1000

typedef int VertexType;

typedef VertexType vexlist [MaxVertexNum];

typedef int adjmatrix [MaxVertexNum] [MaxVertexNum];

void Createl(vexlist Gv,adjmatrix GA,int n,int e)

{

int i,j,k,w;

printf("输入%d个顶点数据\n",n);

for(i=0;i

for(i=0;i

for(j=0;j

{

if(i==j) GA[i][j]=0;

else GA[i][j]=MaxValue;

}

Printf(“输入一条边的两端点序号i和j及边上的权w\n”);

printf("输入%d条无向带权边\n",e);

for(k=1;k<=e;k++){

scanf("%d%d%d",&i,&j,&w);

GA[i][j]=GA[j][i]=w;

}

}

void main()

{

vexlist vl;

adjmatrix a;

Createl(vl,a,5,8); }

相关文档
最新文档