尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

数据结构——二十四、图(王道408) - 实践

数据结构——二十四、图(王道408) - 实践
📅 发布时间:2026/6/19 17:37:34

数据结构——二十四、图(王道408) - 实践

2025-11-16 14:38  tlnshuju  阅读(0)  评论(0)    收藏  举报

文章目录

  • 前言
  • 一.图的定义
  • 二.图逻辑结构的应用
  • 三.无向图、有向图
    • 1.无向图
    • 2.有向图
  • 四.简单图、多重图
    • 1.简单图
    • 2.多重图
  • 五.顶点的度、入度、出度
    • 1.无向图
    • 2.有向图
  • 六.顶点-顶点的关系描述
    • 1.路径
    • 2.回路(环)
    • 3.简单路径与简便回路
    • 4.路径长度
    • 5.顶点到顶点的距离
    • 6.联通与强联通
    • 7.联通图与强联通图
      • 1.联通图
        • 1.定义
        • 2.常考考点
      • 2.强联通图
        • 1.定义
        • 2.常考考点
  • 七.研究图的局部——子图
    • 1.子图
    • 2.生成子图
  • 八.连通分量与强连通分量
    • 1.连通分量
    • 2.强连通分量
  • 九.生成树与生成森林
    • 1.生成树
    • 2.生成森林
  • 十.边的权、带权图/网
  • 十一.几种特殊形态的图
    • 1.无向完全图
    • 2.有向完全图
    • 3.稀疏图与稠密图
    • 4.树,森林,有向树
      • 1.树与森林
        • 1.概念
        • 2.常考考点
      • 2.有向树
  • 十二.知识回顾与重要考点
  • 结语

前言

本文介绍了图的基本概念和逻辑结构。图由顶点集V和边集E组成,分为无向图和有向图。无向图边无序,有向图边有序。简单图不存在重复边和自环边,而多重图允许。顶点的度在无向图中为相连边数,有向图中分为入度和出度。路径分为容易路径和回路,连通性分为连通和强连通。子图包括一般子图和生成子图,连通分量和强连通分量是极大连通子图。连通图的生成树是极小连通子图,非连通图的生成森林由各连通分量的生成树组成。

一.图的定义

在这里插入图片描述

在这里插入图片描述

  • 图G由顶点集V和边集E组成,记为G=(V,E),其中V(G)表示图G中顶点的有限非空集;E(G)表示图G中顶点之间的关系(边)集合。若V = { v 1 , v 2 , … , v n } V=\{v_{1},v_{2},\dotsc ,v_{n}\}V={v1​,v2​,…,vn​},则用∣ V ∣ |V|∣V∣表示图G中顶点的个数,也称图G的阶,E = { ( u , v ) ∣ u ∈ V , v ∈ V } E=\{(u,v)\mid u\in V,v\in V\}E={(u,v)∣u∈V,v∈V},用∣ E ∣ |E|∣E∣表示图G中边的条数。
  • 注意:线性表许可是空表,树允许是空树,但图不可以是空,即V一定是非空集

二.图逻辑结构的应用

在这里插入图片描述

在这里插入图片描述

三.无向图、有向图

1.无向图

在这里插入图片描述

  • 若 E 是无向边(简称边)的有限集合时,则图 G 为无向图。边是顶点的无序对,记为 (v,w) 或 (w,v),因为 (v,w)=(w,v),其中 v、w 是顶点。可以说顶点 w 和顶点 v 互为邻接点。边 (v,w) 依附于顶点 w 和 v,或者说边 (v,w) 和顶点 v、w 相关联。
    G_{2}=(V_{2},E_{2})
    V_{2}={A,B,C,D,E}
    E_{2}={(A,B),(B,D),(B,E),(C,D),(C,E),(D,E)}

2.有向图

在这里插入图片描述

  • 若 E 是有向边(也称弧)的有限集合时,则图 G 为有向图。弧是顶点的有序对,记为<v,w>,其中 v、w 是顶点,v 称为弧尾,w 称为弧头,< v,w> 称为从顶点 v 到顶点 w 的弧,也称 v 邻接到 w,或 w 邻接自 v。<v,m>≠<w,v>
    G_{1}=(A,B,C,D,E)
    V_{1}={A,B,C,D,E}
    E_{1}={< A,B,>,< A,C,>,< A,D,>,< A,E,>,< B,A,>,< B,C,>,< B,E,>,< C,D>}

四.简单图、多重图

数据结构课程只探讨“简单图”

1.简单图

在这里插入图片描述

  • ①不存在重复边;
  • ②不存在顶点到自身的边;

2.多重图

在这里插入图片描述

  • 图G中某两个结点之间的边数多于一条,又允许顶点通过同一条边和自己关联,则G为多重图

五.顶点的度、入度、出度

1.无向图

在这里插入图片描述

  • 对于无向图:顶点v的度是指依附于该顶点的边的条数,记为TD(v)。
  • 在具有n个顶点、e条边的无向图中,∑ i = 1 n T D ( v i ) = 2 e \sum_{i=1}^{n}\mathrm{TD}(v_{i})=2e∑i=1n​TD(vi​)=2e
    即无向图的全部顶点的度的和等于边数的2倍

2.有向图

在这里插入图片描述

  • 对于有向图:
    入度是以顶点v为终点的有向边的数目,记为ID(v);
    出度是以顶点v为起点的有向边的数目,记为OD(v)。
  • 顶点v的度等于其入度和出度之和,即TD(v)=ID(v)+OD(v)。
  • 在具有n个顶点、e条边的有向图中,∑ i = 1 n I D ( v i ) = ∑ i = 1 n O D ( v i ) = e \sum_{i=1}^{n}ID(v_{i})=\sum_{i=1}^{n}OD(v_{i})=e∑i=1n​ID(vi​)=∑i=1n​OD(vi​)=e

六.顶点-顶点的关系描述

  • 图一
    在这里插入图片描述

  • 图二
    在这里插入图片描述

1.路径

  • 路径——顶点v p v_{p}vp​到顶点v q v_{q}vq​之间的一条路径是指顶点序列,v p , v i 1 , v i 2 , . . . , v i m , v q v_{p},v_{i_{1}},v_{i_{2}},...,v_{i_m},v_{q}vp​,vi1​​,vi2​​,...,vim​​,vq​

  • 通过在无向图里边,只要一条边存在,那么你能够从上往下走,也能够从下往上走该路径的方向是没有限制的,

  • 但是在有向图里边,路径的方向必须和弧的方向是一致的

  • 如在图一(无向图)中:

    • A到D的路径有:
      • ABD
      • ABED
      • ABECD
  • 在图二(有向图)中:

    • 顶点A到顶点E的路径:
      • ABE
      • AE
    • 顶点E到顶点A不存在路径

2.回路(环)

  • 回路——第一个顶点和结果一个顶点相同的路径称为回路或环
  • 如图一中的BDEB就是一个环
  • 如图二中的ABCDA也是一个环

3.便捷路径与容易回路

  • 容易路径——在路径序列中,顶点不重复出现的路径称为容易路径。
  • 简单回路——除第一个顶点和最后一个顶点外,其余顶点不重复出现的回路称为简单回路。

4.路径长度

  • 路径长度——路径上边的数目

5.顶点到顶点的距离

  • 点到点的距离——从顶点u出发到顶点v的最短路径若存在,则此路径的长度称为从u到v的距离。若从u到v根本不存在路径,则记该距离为无穷(∞)。

6.联通与强联通

  • 无向图中,若从顶点v到顶点w有路径存在,则称v和w是连通的
  • 有向图中,若从顶点v到顶点w和从顶点w到顶点v之间都有路径,则称这两个顶点是强连通的

7.联通图与强联通图

1.联通图

1.定义
  • 若图G中任意两个顶点都是连通的,则称图G为连通图,否则称为非连通图。
2.常考考点
  • 对于n个顶点的无向图G,

  • 若G是连通图,则最少有n-1条边

    • 例如5个顶点的最少边数的联通图
      在这里插入图片描述
  • 若G是非连通图,则最多可能有C n − 1 2 C_{n-1}^{2}Cn−12​条边

    • 例如:4个顶点的最大边数的非联通图
      在这里插入图片描述

2.强联通图

1.定义
  • 若图中任何一对顶点都是强连通的,则称此图为强连通图。
2.常考考点
  • 对于n个顶点的有向图G,
  • 若G是强连通图,则最少有n条边(形成回路)
    • 例如5个顶点边数最少的强联通图
      在这里插入图片描述

七.研究图的局部——子图

1.子图

在这里插入图片描述

  • 设有两个图 G=(V,E) 和 G’=(V’,E’),若 V’ 是 V 的子集,且 E’ 是 E 的子集,则称 G’ 是 G 的子图。
  • 并非任意挑几个点、几条边都能构成子图,如下图
    在这里插入图片描述

2.生成子图

在这里插入图片描述

  • 若有满足V(G′ ^{\prime}′)=V(G)的子图G′ ^{\prime}′,则称其为G的生成子图
  • 比如上图中,大家把原图保留全部顶点,去掉了一些边,终于就变成了后面的生成子图

在有向图中,所谓子图和生成子图的概念也是一样的,不再赘述

八.连通分量与强连通分量

1.连通分量

在这里插入图片描述

  • 无向图中的极大连通子图称为连通分量。
  • 极大连通子图:子图必须连通,且包含尽可能多的顶点和边
  • 如上图的无向图,我们行把它分为这样的三个连通分量,每一个连通分量其实都是原图的一个子图,并且这些子图它们都是连通的
    在这里插入图片描述

2.强连通分量

在这里插入图片描述

  • 有向图中的极大强连通子图称为有向图的强连通分量
  • 极大强连通子图:子图必须强连通,同时保留尽可能多的边
  • 如上面的有向图中,强连通分量有:
    在这里插入图片描述

九.生成树与生成森林

1.生成树

在这里插入图片描述

  • 连通图的生成树是包含图中全部顶点的一个极小连通子图。

  • 极小连通子图:边尽可能的少,但要保持连通

  • 如上图的生成树为:
    在这里插入图片描述

  • 若图中顶点数为n,则它的生成树含有n-1条边。对生成树而言,若砍去它的一条边,则会变成非连通图,若加上一条边则会形成一个回路。

2.生成森林

在这里插入图片描述

  • 在非连通图中,连通分量的生成树构成了非连通图的生成森林。

  • 如上非连通无向图,先将其所有的连通分量画出来
    在这里插入图片描述

  • 然后将其全部转化为生成树,就变成了生成森林
    在这里插入图片描述

十.边的权、带权图/网

在这里插入图片描述

  • 边的权——在一个图中,每条边都可以标上具有某种含义的数值,该数值称为该边的权值。带权图/网——边上带有权值的图称为带权图,也称网。
  • 带权路径长度——当图是带权图时,一条路径上所有边的权值之和,称为该路径的带权路径长度

十一.几种特殊形态的图

1.无向完全图

在这里插入图片描述

  • 无向完全图—无向图中任意两个顶点之间都存在边
  • 若无向图的顶点数 |V|=n,则∣ E ∣ ∈ [ 0 , C n 2 ] = [ 0 , n ( n − 1 ) / 2 ] |E|\in[0,C_{n}^{2}]=[0,n(n-1)/2]∣E∣∈[0,Cn2​]=[0,n(n−1)/2]

2.有向完全图

在这里插入图片描述

  • 有向完全图—有向图中任意两个顶点之间都存在方向相反的两条弧
  • 若有向图的顶点数∣ V ∣ = n \mid V\mid=n∣V∣=n ,则∣ E ∣ ∈ [ 0 , 2 C n 2 ] = [ 0 , n ( n − 1 ) ] \mid E\mid \in\left[0,2C_{n}^{2}\right]=\left[0,n(n-1)\right]∣E∣∈[0,2Cn2​]=[0,n(n−1)]

3.稀疏图与稠密图

在这里插入图片描述

  • 边数很少的图称为稀疏图

在这里插入图片描述

  • 反之称为稠密图

通过没有绝对的界限,一般来说|E|<|V|log|V|时,能够将G视为稀疏图

4.树,森林,有向树

1.树与森林

1.概念

在这里插入图片描述

  • 树–不存在回路,且连通的无向图
  • n个顶点的树,必有n-1条边。
2.常考考点
  • n个顶点的图,若|E|>n-1,则一定有回路

2.有向树

在这里插入图片描述

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

十二.知识回顾与重要考点

在这里插入图片描述

结语

终于到图了,没想到能坚持这么久,接下来我还要继续努力啊

如果想查看更多章节,请点击:一、数据结构专栏导航页

相关新闻

  • C# Avalonia 18- ControlTemplates - ColorPickerUserControlTest
  • Spring AI Alibaba 项目源码学习(九)-其他继承BaseAgent
  • Linux进程状态 - 教程

最新新闻

  • ARM9微控制器LPC32x0系列:低功耗、高集成度与VFP协处理器的嵌入式设计实践
  • 洛阳市奢侈品手表包包回收价格差距高达15%:实测对比告诉你哪家店报价最实在 - 谊识预商务
  • 14000张高清驾驶员行为数据集:YOLO危险驾驶识别实战基线
  • 濮阳市闲置爱马仕、劳力士变现指南:奢侈品手表包包回收门店实地测评 - 谊识预商贸
  • 大连市奢侈品手表包包回收价格差距高达15%:实测对比告诉你哪家店报价最实在 - 谊识预商贸
  • 曲靖市闲置手表包包奢侈品变现,整理了5家靠谱回收店联系方式 - 谊识预商务

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号