大话数据结构–初始图[亲测有效]

大话数据结构–初始图[亲测有效]「这是我参与11月更文挑战的第25天,活动详情查看:2021最后一次更文挑战」。 七、图 7.1图的定义 图( Graph)是由顶点的有穷非空集合和顶点之间边的集合组,通常表示为: G(V,E),其中

「这是我参与11月更文挑战的第25天,活动详情查看:2021最后一次更文挑战」。

七、图

7.1图的定义

图( Graph)是由顶点的有穷非空集合和顶点之间边的集合组,通常表示为: G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。

image-20211117094029909

  • 线性表中我们把数据元素叫元素,树中将数据元素叫结点,在图中数据元素,我们则称之为顶点(Vertex)

  • 线性表中可以没有数据元素,称为空表。树中可以没有结点,叫做空树。那么对于图呢?在图结构中,不允许没有顶点。在定义中,若V是顶点的集合,则强调了顶点集合V有穷非空。

  • 线性表中,相邻的数据元素之间具有线性关系,树结构中,相邻两层的结点具有层次关系,而图中,任意两个顶点之间都可能有关系,顶点之间的逻辑关系用边来表示,边集可以是空的。

7.1.1 各种图的定义

无序对(unordered pair)一种特殊的集合.即仅含两个元素的集合.


有向图

每条边都是有方向的

image-20211117095526493

无向图

每条边都是无方向的

image-20211117095534527

完全图

任意两个点都有一条边相连

image-20211117095746697

稀疏图

有很少边或弧的图(e <nlogn)

稠密图

有较多边或弧的图

边/弧带权的图

邻接

有边/弧相连的两个顶点之间的关系

存在(Vi, Vj),则称v和v:互为邻接点;

存在<Vi, Vj>,则称Vi邻接到Vj, Vj邻接于Vi;

关联(依附)

边/弧与顶点之间的关系

存在(Vi, Vj)/<Vi, Vj>,则称该边/弧关联于Vi和Vj;

顶点的度

与该顶点相关联的边的数目,记为TD(v)

有向图中,顶点的度等于该顶点的入度与出度之和。

​ 顶点V的入度是以v为终点的有向边的条数,记作ID(v)

​ 顶点v的出度是以V为始点的有向边的条数,记作OD(v)

看实例:

image-20211117101211186

当有向图中仅1个顶点的入度为0,其余顶点的入度均为1,此时是何形状? 是树!而且是一棵有向树!

image-20211117101538804

路径

若干条边构造的顶点序列

image-20211117102927932

路径长度

路径上边或弧的数目/权值之和

如果没有权值,上图这个路径的长度就是2

如果边有权值,那么边上的权值相加就是路径长度

回路(环)

第一个顶点和最后一个顶点相同的路径

image-20211117103322575

简单路径

除路径起点和终点可以相同外,其余顶点均不相同的路径

image-20211117103300841

简单回路(简单环)

除路径起点和终点相同外,其余顶点均不相同的路径。

连通图(强连通图)

在无(有)向图G=(V, {E} )中,若对任何两个顶点v、u都存在从V到u的路径,则称G是连通图(强连通图)

image-20211117151301404

从图中能很明白的看出各个概念之间的差异

这里不多解释

子图

image-20211117152043639

image-20211117152058995

如上,可以轻松看出图b和图c都是图a的子图

连通分量

无向图G的极大连通子图称为G的连通分量。

极大连通子图是指顶点的个数已经是最大的了,在添加顶点的话子图不能形成连通了

image-20211117152634004

强连通分量

有向图G的极大强连通子图称为G的强连通分量。

极大强连通子图意思是:该子图是G的强连通子图,将D的任何不在该 子图中的顶点加入,子图不再是强连通的。

image-20211117153030009

极小连通子图

该子图是G的连通子图,在该子图中删除任何一条边子图不在连通

极小连通子图可以包含所有顶点,也可以不包含所有顶点

生成树

包含无向图G所有顶点的极小连通子图

生成森林

对非连通图,由各个连通分量的生成树的集合

image-20211117153655978

7.1.2图的定义与术语总结

图按照有无方向分为无向图和有向图。无向图由顶点和边构成,有向图由顶点和弧构成。弧有弧尾和弧头之分。

图按照边或弧的多少分稀疏图和稠密图。如果任意两个顶点之间都存在边叫完全图,有向的叫有向完全图。若无重复的边或顶点到自身的边则叫简单图

图中顶点之间有邻接点、依附的概念。无向图顶点的边数叫做度,有向图顶点分为入度和出度。

图上的边或弧上带则称为

图中顶点间存在路径,两顶点存在路径则说明是连通的,如果路径最终回到起始点则称为环,当中不重复叫简单路径。若任意两顶点都是连通的,则图就是连通图,有向则称强连通图。图中有子图,若子图极大连通则就是连通分量,有向的则称强连通分量。

无向图中连通且n个顶点n-1条边叫生成树。有向图中一顶点入度为0其余顶点入度为1的叫有向树。一个有向图由若千棵有向树构成生成森林。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/12939.html

(0)

相关推荐

  • 使用 Apache Superset 可视化 ClickHouse 数据[通俗易懂]

    使用 Apache Superset 可视化 ClickHouse 数据[通俗易懂]Apache Superset是一个强大的BI工具,它提供了查看和探索数据的方法。它在 ClickHouse 用户中也越来越受欢迎。 我们将介绍安装 Superset 的 2 种方法,然后展示如何从

    2023-04-17
    157
  • mysql源码安装_mysql 性能优化

    mysql源码安装_mysql 性能优化今天测试Linux 各个软件源 ,发现mysql 配置官方源之后,yum install -y mysql 安装了 mysql lastst 最新版, 安装完之后,奇葩的是没有提示输入密码, 所以 m

    2023-01-23
    148
  • idea切换窗口快捷键_idea前进和后退快捷键

    idea切换窗口快捷键_idea前进和后退快捷键当我写这篇文章的时候,想起来 N 年前一件往事,我一不小心删除了一个刚刚写好的页面,又气又恼,后来趁着还有印象默默的花了半个多小时又重写了一遍,那个时候要是知道 IDEA 中这个功能该有多好呀! 今天

    2023-08-19
    126
  • MYSQL数据库原理与应用贾晶教材答案_SQL数据库

    MYSQL数据库原理与应用贾晶教材答案_SQL数据库数据库增删改查操作,重点总结了SELECT语句

    2023-05-29
    150
  • Python工程师——cat函数核心使用技巧

    Python工程师——cat函数核心使用技巧在编程中,常常需要读取文件内容,并将其打印到终端或者进行其他操作。对于Linux和Unix操作系统中的开发人员来说,cat函数是一个非常常用的命令。在Python中,也有对应的cat函数可以使用,本文将介绍cat函数的核心使用技巧。

    2024-06-15
    48
  • Mybatis的分页插件PageHelper的使用及支持的数据库

    Mybatis的分页插件PageHelper的使用及支持的数据库一、Mybatis框架的分页插件PageHelper,目前支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页。 他的使用非常简单,简要步骤如…

    2023-01-28
    162
  • Python执行CMD命令

    Python执行CMD命令Python是一款功能强大的编程语言,在开发和运维领域都有广泛的应用。在进行系统管理、监控、调试等工作过程中,经常需要与CMD命令打交道。Python提供了大量的方法来执行CMD命令,帮助用户更快捷地完成工作。

    2024-04-24
    63
  • 使用NLTK安装和初始化Python环境

    使用NLTK安装和初始化Python环境NLTK(Natural Language Toolkit)是用于构建Python程序以进行科学和工程计算的平台,因其免费且开源而备受欢迎,是处理自然语言的主要工具。 Python是自然语言处理中广泛使用的编程语言,并且完全由开源组件提供支持。使用Python和NLTK,搭建一个自然语言处理系统变得非常简单。

    2024-07-06
    45

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注