【无标题】

本文介绍了图的概念,包括有向图、无向图、简单图和完全图,并讨论了图的存储方法,如邻接矩阵、邻接表、十字链表和邻接多重表。此外,还讲解了图的遍历,包括广度优先遍历(BFS)和深度优先搜索(DFS),以及它们在解决单源最短路径问题和生成树构建中的应用。
摘要由CSDN通过智能技术生成

6.1 图的概念

  1. 有向图:若E是有向边也称弧的有限集合时,则图G称为有向图。弧是顶点的有序对,记为<v,w>。
  2. 无向图:若E是无向边简称边的有限集合时,则图G称为无向图。边是顶点的无序对,记为(v,w)。
  3. 简单图:如果一个图G满足:a.不存在重复边。b.不存在顶点到顶点自身的边。则该图为简单图。
  4. 完全图:对于无向完全图,E的取值为n(n-1)/2即图中任意两个顶点之间都存在边。对于有向完全图中,任意两个顶点之间都存在方向相反的两条弧。
  5. 连通分量:无向图中极大连通子图称为连通分量。
  6. 强连通、强连通分量:有向图中,v->w,w->v都是有路径的(有路径未必有弧),则称这两个顶点是强连通的。若图中任何一对顶点都是强连通的,则称此图为强联通图有向图中的极大强连通分量称为有向图的强连通分量
  7. 生成树:连通图的生成树是包含图中全部顶点的一个极小连通子图。若图中有n个顶点,则它的生成树含有n-1条边。
  8. 边的权值和网:在图中,每条边都可以标上具有某种含义的数值,该数值称为该边的权值。
  9. 简单路径:在路径序列中,顶点不重复出现的路径称为简单路径。
  10. 简单回路:除第一个顶点和最后一个顶点以外,其余顶点不重复出现的回路称为简单回路。若第一个顶点和最后一个顶点相同,则称为回路或是环。

6.2 图的存储及基本操作

6.2.1 邻接矩阵法

所谓邻接矩阵法,是指用一个一维数组存储图中顶点的信息,用一个二维数组存储图中边的信息(即各顶点的邻接关系),存储顶点之间邻接关系的二维数组称为邻接矩阵。

//图的邻接矩阵存储结构定义
#define Max 100
typedef char VertexType;
typedef int EdgeType;
typedef struct {
	VertexTyp
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值