算法:图的基本概念

图的分类

有向图

· 定义 :图中的边有方向性,用箭头表示。

· 表示:边 (A, B) 与 (B, A) 是两条不同的边。

无向图

· 定义 :图中的边没有方向。

· 表示 :边 (A, B) 与 (B, A) 是同一条边。

· 转换:可以将无向图中的一条边看作两条方向相反的有向边。

图的特殊结构

自环

· 定义:一条边从某个顶点出发,并指向其自身。

重边

· 定义:两个顶点之间存在两条或两条以上完全相同的边(在有向图中要求方向也相同)。

稠密图 vs 稀疏图

· 稀疏图 :边数远少于顶点数的平方(|E| << |V|²),即"少边多点"。

· 稠密图 :边数接近顶点数的平方(|E| ≈ |V|²),即"多边少点"。

· 这是一个相对概念,没有绝对的界限。

顶点与路径

顶点的度

· 无向图:与该顶点相关联的边的总数。

· 有向图:

· 入度 :指向该顶点的边的数目。

· 出度:从该顶点指出的边的数目。

路径

· 定义 :一个顶点序列,其中每相邻两个顶点之间都存在一条边。

· 回路/环:路径的起点和终点是同一个顶点。

路径长度

· 无权图 :路径上经过的边的数量。

· 带权图:路径上所有边的权值之和。

连通性

连通图与连通分量

· 连通图 :在无向图中,如果任意两个顶点之间都存在路径,则该图称为连通图。

· 非连通图 :不是连通图的无向图。

· 重要性质 :一个有 n 个顶点的图,如果边数小于 n-1,则它一定是非连通图。

· 连通分量 :无向图中的极大连通子图。

· "极大"意味着 :再也找不到另一个包含该子图且比它更大的连通子图。

· 一个图可以有多个连通分量。

连通分量数的计算

· 对于一个有 n 个顶点、m 条边且无环的森林结构,其连通分量数可以通过以下公式计算:

连通分量数 = n - m

生成树

· 定义 :一个连通图的生成树是包含其全部顶点的极小连通子图。

· 性质

  1. 包含原图所有 n 个顶点。
  2. 只有 n-1 条边。
  3. 是连通的,并且无环。
    · 关键特性
    · 极小性:在生成树中移除任意一条边都会导致图变得不连通。
    · 在生成树中添加任意一条边都会形成一个回路。
相关推荐
To_OC1 小时前
LC 51 N 皇后:我以为难的是回溯,结果栽在了对角线下标
javascript·算法·leetcode
Scott9999HH1 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
2401_841495642 小时前
【操作系统】进程同步与互斥实验报告
c++·算法·操作系统·进程·并发·同步·互斥
fqbqrr2 小时前
2607C++,soui与安卓
c++·soui
码智社2 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
AI云海2 小时前
python 列表、元组、集合和字典
开发语言·python
克里斯蒂亚诺更新2 小时前
ruoyi角色权限的对应关系
笔记
萧瑟余晖3 小时前
JDK 26 新特性详解
java·开发语言
马优晨3 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎