数据结构——图(基础)

本文详细介绍了图数据结构的基础知识,包括图的基本概念、存储方式(邻接矩阵、邻接表、十字链表、邻接多重表)以及图的操作,如遍历(BFS和DFS)、最小生成树(Prim和Kruskal算法)、最短路径(Dijkstra和Floyd算法)等。此外,还探讨了有向无环图(DAG)、拓扑排序和关键路径的概念。
摘要由CSDN通过智能技术生成

图的基本概念

G = (V, E),顶点集V,边集E
V(G):图G中顶点的有限非空集
E(G):图G中顶点之间的关系(边)集合
| V |:图G中顶点的个数,阶
| E |:图G中边的条数

线性表可以为空(空表),树可以为空(空树),图不能为空图。(意思是不能一个顶点都没有,但是边集可以为空)

  1. 有向图

  2. 无向图

  3. 简单图
    不存在重复边;不存在环。

  4. 多重图
    某两个结点之间的边数多于一条,又允许顶点通过同一条边和自己关联。(与简单图相对立)

  5. 完全图
    完全简单图。任意两个顶点之间都存在边。(无向完全图、有向完全图)

  6. 子图
    对于G = (V, E),G’ = (V’, E’),若V’∈V,E’∈E,则G’是G的子集。如果满足了V(G’) = V(G),则称其为G的生成子图

  7. 连通图
    在无向图中,如果顶点a和b之间有路径存在,称ab是连通的。图中任意两个结点都是连通的话称其为连通图,否则为非连通图。
    极大连通子图称为连通分量。极大即要求该连通子图包含其所有的边。极小连通子图是既要保持图连通又要使得边数最少的子图。

  8. 强连通图
    在有向图中,如果顶点a和b之间有路径存在,称ab是强连通的。若图中任意两个结点都是强连通的,称为强连通图。
    极大强连通子图称为强连通分量

  9. 生成树
    连通图中,生成树是包含图中全部顶点的一个极小连通子图。
    非连通图中,连通分量的生成树构成非连通图的生成森林。

  10. 度、入度、出度
    顶点的度定义为该顶点为一个端点的边的数目。

  11. 边的权和网
    边上有权值的图称为带权图,也称为网。

  12. 稠密图、稀疏图
    边数很少的图称为稀疏图,反之为稠密图

  13. 路径、路径长度和回路
    路径上边的数目称为路径长度。起点和终点相同的路径称为回路(环)。若一个图有n个顶点,且有大于n-1条边,则此图一定有环。

  14. 简单路径
    路径序列中,顶点不重复出现的路径称为简单路径。简单回路

  15. 距离
    从a到b的最短路径若存在,称为距离。若不存在,称其距离为无穷。

  16. 有向树
    一个顶点的入度为0、其余顶点的入度均为1的有向图,称为有向树。

图的存储及基本操作

邻接矩阵法

G2 [1] [4] = a11a14 + a12a24 + a13a34 + a14a44 = 3
顶点1到顶点4的长度为2的路径一共有3条

  1. 空间复杂度:O( |V|2 )
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值