图的相关概念

图的概念

图 (graph) 是一个二元组 𝐺 =(𝑉(𝐺),𝐸(𝐺)).其中 𝑉(𝐺) 是非空集,称为 点集 (vertex set) ,对于 𝑉 中的每个元素,我们称其为 顶点 (vertex) 或 节点 (node)(或 结点) ,简称 点 ;𝐸(𝐺) 为 𝑉(𝐺) 各结点之间边的集合,称为 边集 (edge set)

常用 𝐺 =(𝑉,𝐸) 表示图.

当 𝑉,𝐸 都是有限集合时,称 𝐺 为 有限图.

当 𝑉 或 𝐸 是无限集合时,称 𝐺 为 无限图.

图有多种,包括 无向图 (undirected graph) ,有向图 (directed graph) ,混合图 (mixed graph) 等.

有向图的边是单向的,只能从一端连接到另一端;无向图的边是双向的,他表示这条边既可以从一端走向另一端,也可以从另一端走向这端。混合图,则图中既有 有向边 ,又有 无向边.

除了从有向图和无向图的角度分类,我们还可以从边是否有权值的角度,将图分类为 无权图 和 带权图 ,

简单图

自环 (loop) :对 𝐸 中的边 𝑒 =(𝑢,𝑣),若 𝑢 =𝑣,则 𝑒 被称作一个自环.

重边 (multiple edge) :若 𝐸 中存在两个完全相同的元素(边)𝑒1,𝑒2,则它们被称作(一组)重边.

简单图 (simple graph) :若一个图中没有自环和重边,它被称为简单图.具有至少两个顶点的简单无向图中一定存在度相同的结点.(鸽巢原理)

如果一张图中有自环或重边,则称它为 多重图 (multigraph).

度数

与一个顶点 𝑣 关联的边的条数称作该顶点的 度 (degree) ,记作 𝑑(𝑣).特别地,对于边 (𝑣,𝑣),则每条这样的边要对 𝑑(𝑣) 产生 2 的贡献.

对于无向简单图,有 𝑑(𝑣) =|𝑁(𝑣)|.

握手定理(又称图论基本定理):对于任何无向图 𝐺 =(𝑉,𝐸),有 ∑𝑣∈𝑉𝑑(𝑣) =2|𝐸|.

即无向图中结点度数的总和等于边数的两倍。有向图中结点的 入度 之和等于 出度 之和等于边数。

推论: 在任意图中,度数为奇数的点必然有偶数个。

证明:反证法

在有向图 中,度可以分为:入度 和 出度

以上图为例

节点2的入度等于3,出度等于2;

所以节点v入度 :有向图中以节点v作为终点的个数

节点v出度 :有向图中以节点v作为起点的个数

子图

对于一个图,我们取出其中的一些顶点,以及保留两端都在这些顶点之中的边,这样构成的子图称为 顶点导出子图 。

如果我们取出一些边,并保留这些边的顶点,这样构成的子图为 边导出子图 。

若 𝐻 ⊆𝐺 满足 𝑉′ =𝑉,则称 𝐻 为 𝐺 的 生成子图/支撑子图 (⊆是包含符号)

如果一张无向图 𝐺 的某个生成子图 𝐹 为 𝑘- 正则图,则称 𝐹 为 𝐺 的一个 𝑘 - 因子

连通

对于一张图,和树不同,树是肯定连通的,但是图可以是不连通的。 我们称任意两个结点可达为 连通 。如果一个无向图上,任意两个结点都可以互相到达,那么我们叫这张图为连通图,反之则称为非连通图。

若无向图 𝐺 =(𝑉,𝐸),满足其中任意两个顶点均连通,则称 𝐺 是 连通图 (connected graph) ,𝐺 的这一性质称作 连通性 (connectivity),

若 𝐻 是 𝐺 的一个连通子图,且不存在 𝐹 满足 𝐻 ⊊𝐹 ⊆𝐺 且 𝐹 为连通图,则 𝐻 是 𝐺 的一个 连通块/连通分量 (connected component)

示例如下 :

对于有向图,

若一张有向图的节点两两互相可达,则称这张图是 强连通图

若一张有向图的边替换为无向边后可以得到一张连通图,则称原来这张有向图是 弱连通图

与连通分量类似,也有 弱连通分量 和 强连通分量

路径

途径 (walk) :途径是连接一连串顶点的边的序列,可以为有限或无限长度.形式化地说,一条有限途径 𝑤 是一个边的序列 𝑒1,𝑒2,...,𝑒𝑘,使得存在一个顶点序列 𝑣0,𝑣1,...,𝑣𝑘 满足 𝑒𝑖 =(𝑣𝑖−1,𝑣𝑖),其中 𝑖 ∈1,𝑘.这样的途径可以简写为 𝑣0 →𝑣1 →𝑣2 →⋯ →𝑣𝑘.通常来说,边的数量 𝑘 被称作这条途径的 长度(如果边是带权的,长度通常指途径上的边权之和,题目中也可能另有定义).

迹 (trail) :对于一条途径 𝑤,若 𝑒1,𝑒2,...,𝑒𝑘 两两互不相同,则称 𝑤 是一条迹.

路径 (path) (又称 简单路径 (simple path) ):对于一条迹 𝑤,若其连接的点的序列中点两两不同,则称 𝑤 是一条路径.

回路 (circuit) :对于一条迹 𝑤,若 𝑣0 =𝑣𝑘,则称 𝑤 是一条回路.

环/圈 (cycle) (又称 简单回路/简单环 (simple circuit) ):对于一条回路 𝑤,若 𝑣0 =𝑣𝑘 是点序列中唯一重复出现的点对,则称 𝑤 是一个环

特殊的图

任意两点之间都有边的图称作 完全图 。

所有的边和点恰好构成一个圈的 无向简单图 称作环图。

若无向简单图 𝐺 =(𝑉,𝐸) 满足,存在一个点 𝑣 为支配点,其余点之间没有边相连,则称 𝐺 为 星图 ,𝑛 +1(𝑛 ≥1) 阶星图记作 𝑆𝑛.

链 和树都是图

相关推荐
大侠归来1 小时前
C 语言 | 在函数中操作数组
c语言·c++·算法
怕浪猫6 小时前
GEO 优化到底是什么?AI时代内容创作者必须懂的新技能
算法·面试·github
朝朝辞暮i7 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
Evand J8 小时前
【MATLAB例程】三维RRT+APF避障路径规划与到达角(AOA)定位算法|三维路径优化与定位仿真例程
算法·matlab·路径规划·代码·定位·rrt·aoa
郑同学的笔记8 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
随意起个昵称9 小时前
【背包dp】输出方案路径
c++·动态规划
weixin_307779139 小时前
有限产能智能排产与动态重排智能体:从需求解构到技术实现
开发语言·人工智能·算法·架构
朝朝辞暮i9 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
by2099910 小时前
学会使用std::string类,并理解其内部是如何管理字符串的详细阐述(上)
c++·笔记·字符串·类和对象·string
沙漠之主10 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++