博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
图的存储结构
阅读量:5290 次
发布时间:2019-06-14

本文共 971 字,大约阅读时间需要 3 分钟。

1.邻接矩阵的表示方法

用0和1表示

无向图:的邻接矩阵是对称的,图中的边的数目是矩阵中1的个数的一半。顶点i的度为第i行或第i列1的个数。第i行j列的值为1表示顶点i和顶点j之间有边相连

有向图:矩阵不一定对称,图中的有向边的数目是矩阵1的个数,顶点i的入度为第i列的1的个数,顶点i的出度为第i行1的个数。第i行j列的值为1表示顶点i和顶点j之间有边相连。

邻接矩阵的存储表示:

图的邻接矩阵的类型:

#define MaxSize 100                /*最大的顶点数*/typedef char VertexType;               /*顶点的类型*/typedef int wType;       /*边上的权重类型*/typedef struct{VertexType vexs[MaxSize];    /* 顶点表*/wType w[MaxSize][MaxSize]; /*邻接矩阵,可看做边表*/int vexnum,w;}AdjMatrix;
View Code

无向图邻接矩阵的算法:

void CreatGraph(AdjMatrix *G) /*建立无向图的邻接矩阵表示*/{    int i,j,k;    scanf("%d%d",&G->vexnum,&G->wnum);/*输入顶点数和边数*/    getchar();    for(i=0;i
vexnum;i++) for(j=0;j
vexnum;j++) G->w[i][j]=0; /*邻接矩阵初始化*/ for(k=0;k
wnum;k++) /*读入wnum条边*/ {scanf("%d%d",&i,&j); /*输入表示边(vi,vj)的顶点序号i,j*/ G->w[i][j]=1; G->w[j][i]=1; }}
View Code

。。。。。待续

 

转载于:https://www.cnblogs.com/lqs-zsjky/p/4356250.html

你可能感兴趣的文章
TC SRM 593 DIV1 250
查看>>
SRM 628 DIV2
查看>>
2018-2019-2 20165314『网络对抗技术』Exp5:MSF基础应用
查看>>
统计单词,字符,和行
查看>>
《Akka应用模式:分布式应用程序设计实践指南》读书笔记8
查看>>
jQuery垂直滑动切换焦点图
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
模运算
查看>>
python多线程的使用
查看>>
团队编程项目作业1-成员简介及分工
查看>>
使用Chrome(PC)调试移动设备上的网页
查看>>
UI基础--手写代码实现汤姆猫动画
查看>>
使用gitbash来链接mysql
查看>>
黑盒测试和百合测试的优缺点对比
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>
右侧导航栏(动态添加数据到list)
查看>>
81、iOS本地推送与远程推送详解
查看>>
C#基础_注释和VS常用快捷键(一)
查看>>
虚拟DOM
查看>>
uva 11468 Substring
查看>>