数据结构——图(一、图的定义)

一、图的定义

1、什么是图?

图G=(V,E)   如图,无向图G

顶点集V={v_{1},v_{2},...,v_{n}},用|V|表示图G的顶点个数

   如:V={A,B,C,D} ,|V|=4

边集E={(u,v)|u\inV, v\inV}, 用|E|表示图G的边的条数

如:E={(u,v)|(A,B),(A,D),(A,C),(C,D)},|E|=4zhu

注:

1、图不可以是空图。线性表可以是空表,树可以是空树

2、图中不能一个顶点都没有,V非空

3、但是图中可以没有边,E为空,此时图中只有顶点没有边

2、简单图和多重图

简单图的条件:

1、不存在重复边

2、不存在顶点到自身的边

多重图的条件:

某两个顶点之间的变数大于1条,又允许顶点通过一条边自身关联

3、有向图

E是有向边(简称弧)的有限集合,弧是顶点的有序对。

记为<v,w>,v为弧头,w为弧尾。也称v邻接到w。

如图为有向图G,注意边集E={(u,v)|(A,B),(B,A),(A,C),(A,D),(C,D)},AB两个顶点有两条边

4、无向图

E是无向边的有限结合,边是顶点的无序对。

记为<v,w>或<w,v>,也称v和w互为邻接点。

5、顶点的度,入度、出度

顶点的度针对无向图、有向图,所有顶点的度=边数*2

入度、出度仅用于有向图

无向图

有向图

顶点v的度

依附于顶点v的边的条数

如图,顶点A的度=3

顶点v的度分为入度和出度

如图,顶点A的度=入度+出度=1+3=4

入度是以顶点v为终点的有向边的数目

出度是以顶点v为起点的有向边的数目

图的度

所有顶点的度之和     =边数*2

如图,图的度(全部顶点的度)=8

所有顶点的入度之和 = 所有顶点的出度之和   =边数

所有顶点的度之和     =边数*2

如图,图的入度(全部顶点的入度)=5

图的出度(全部顶点的出度)=5

图的度(全部顶点的度)=10

6、路径、路径长度、回路

1、路径

顶点A到顶点D的之间的一条路径是指顶点序列A,C,D,关联的边也是路径的构成要素

简单路径——顶点不重复

2、路径上的边的数目成为路径长度

如,顶点A到顶点D的路径长度为2

3、第一个顶点和最后一个顶点相同的路径成为回路或环

简单回路——除第一个顶点和最后一个顶点之外,其他顶点不重复的回路

如,A-C-D-A

注:

1、若一个图有n个顶点,并且大于n-1条边,则此图一定有环

7、距离

顶点间最短路径,则此路径的长度称为距离

若两点之间不存在路径,则距离为无穷(∞)

8、子图

G=(V,E)和{G}'=({V}',{E}'),若{V}'是V的子集,{G}'是G的子集,则称{G}'是G的子图

V({G}')=V(G),则称其为G的生成子图。  (即包含所有顶点)

注:

并非V和E的任何子集都能构成子图

如果{E}'中某些边的顶点不再{V}'中,此时不是图

9、连通、连通图、连通分量

此节仅针对无向图,有向图与强连通有关

1、连通——顶点v到顶点w有路径存在

2、连通图——任意两个顶点之间均连通

若有n个顶点,至少n-1条边,成为连通图;

若有n个顶点,至多C_{n-1}^{2}条边,不是连通图;

计算方法:排除一个点,将其余点的边都铺满

此时,C_{n-1}^{2}+1,一旦达到就会形成连通图。

3、连通分量——无向图中的极大连通子图

极大连通子图——子图必须连通,包含尽可能多的顶点和边

10、强连通图、强连通分量

此节仅针对有向图,无向图与连通有关

1、强连通——从顶点v到顶点w和从顶点w到顶点v都有路径

2、强连通图——任意一对顶点强连通

若有n个顶点,至少n条边,成为强连通图

3、强连通分量——有向图中的极大强连通子图

如图,虚线内记为极大强连通子图

11、生成树、生成森林

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

极小连通子图——包含图中的全部顶点,保持子图连通且边数尽可能少

图中顶点数为n,则生成树含有n-1条

砍一条边->非连通图      加一条边->回路

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

12、边的权、网、带权路径长度

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

路径上所有边的权值之和,称为该路径的带权路径长度。

13、完全图(也称简单完全图)

对于无向图,有C_{n}^{2}条边的无向图称为无向完全图,即完全图中任意两个顶点之间都存在边

|E|\in (0,C_{n}^{2} )

对于有向图,有n(n-1)条弧的有向图称为有向完全图,即任意两个顶点之间都存在方向相反的两条弧。也就是2C_{n}^{2}条边。

|E|\in (0,2C_{n}^{2} )

14、有向树

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

有向树不是强连通图

n个顶点的树,必有n-1条边

n个顶点的图,若|E|>n-1,则一定有回路

二、易混淆定义

若一个图有n个顶点,并且大于n-1条边,则此图一定有环

图中顶点数为n,则生成树含有n-1条

若有n个顶点,至少n-1条边,成为连通图;

若有n个顶点,至多C_{n-1}^{2}条边,不是连通图;

若有n个顶点,至少n条边,成为强连通图

距离、路径长度、带权路径长度

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/91018.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/91018.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python 列表推导式与生成器表达式

Python 列表推导式与生成器表达式在 Python 中&#xff0c;列表推导式&#xff08;List Comprehension&#xff09;和生成器表达式&#xff08;Generator Expression&#xff09;是处理序列数据的高效工具。它们不仅能简化代码&#xff0c;还能提升数据处理的效率。本文将详细介…

XCF32PVOG48C Xilinx Platform Flash PROM

XCF32PVOG48C 是 Xilinx 公司推出的一款高容量、低功耗的 Platform Flash PROM&#xff08;平台闪存配置芯片&#xff09;&#xff0c;专为 Xilinx FPGA 和 CPLD 系列产品提供非易失性配置存储支持。凭借其 32 Mbit 的大容量与出色的系统兼容性&#xff0c;该芯片成为中高端 FP…

重复文件清理工具,附免费链接

链接:https://pan.baidu.com/s/1s_Zx1eHp5Y-XnbbGldIgvw?pwdkjex 提取码:kjex 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦

【Spring Boot 快速入门】二、请求与响应

目录请求响应请求Postman 工具简单参数请求实体参数请求数组集合参数日期参数JSON 参数路径参数响应请求响应 请求 Postman 工具 Postman 是一款功能强大的网页调试与发送网页 HTTP 请求的 Chrome 插件 作用&#xff1a;常用于进行接口测试 简单参数请求 原始方式 在原始的…

高并发系统技术架构

&#xff08;点个赞&#xff0c;算法会给你推荐更多类似干货 ~&#xff09; 口诀&#xff1a; CDN 扛静态&#xff0c;WAF 防恶意&#xff1b;验证码拦机器&#xff1b; Nginx 先限流&#xff0c;Sentinel 再熔断&#xff1b; Redis 扣库存&#xff0c;MQ 异步写&#xff1b; 对…

python任意模块间采用全局字典来实现借用其他类对象的方法函数来完成任务或数据通信的功能

我们在编写pthon代码时&#xff0c;模块间的数据通信主要采用以下几种方法&#xff1a;1、采用全局变量。所有模块都通过引用全局变量&#xff0c;通过本模块对此全局变量数据的修改值&#xff0c;其他模块也能访问并得到此全局变量的当前值&#xff0c;由于全局变量的不可控性…

linux 部署 flink 1.15.1 并提交作业

下载 1.15.1 https://flink.apache.org/downloads.html#apache-flink-1151 部署模式分类 会话模式应用模式单作业模式 1、会话模式 先启动一个集群&#xff0c;保持一个会话&#xff0c;然后通过客户端提交作业&#xff0c;所有作业都在一个会话执行&#xff1b; 会话模式适合规…

Redis数据量过大的隐患:查询会变慢吗?如何避免?

一、Redis数据过多引发的五大隐患&#xff08;附系统交互图&#xff09; #mermaid-svg-X83bpHUu830QXKUt {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-X83bpHUu830QXKUt .error-icon{fill:#552222;}#mermaid-svg-…

网络与信息安全有哪些岗位:(3)安全运维工程师

安全运维工程师是企业安全防线的 “日常守护者”&#xff0c;既要确保安全设备与系统的稳定运行&#xff0c;又要实时监控潜在威胁&#xff0c;快速响应并处置安全事件&#xff0c;是连接安全技术与业务运营的关键角色。其核心价值在于通过常态化运维&#xff0c;将安全风险控制…

鱼皮项目简易版 RPC 框架开发(三)

本文为笔者阅读鱼皮的项目 《简易版 RPC 框架开发》的笔记&#xff0c;如果有时间可以直接去看原文&#xff0c; 1. 简易版 RPC 框架开发 前面的内容可以笔者的前面两个篇笔记 鱼皮项目简易版 RPC 框架开发&#xff08;一&#xff09; 鱼皮项目简易版 RPC 框架开发&#xff08;…

嵌入式Linux:注册线程清理处理函数

在 Linux 多线程编程中&#xff0c;线程终止时可以执行特定的清理操作&#xff0c;通过注册线程清理函数&#xff08;thread cleanup handler&#xff09;来实现。这类似于使用 atexit() 注册进程终止处理函数。线程清理函数用于在线程退出时执行一些资源释放或清理工作&#x…

【Git】Linux-ubuntu 22.04 初步认识 -> 安装 -> 基础操作

文章目录Git 初识Git 安装Linux-centosLinux-ubuntuWindowsGit 基本操作配置 Git认识工作区、暂存区、版本库添加文件 -- 场景一查看 .git 文件添加文件 -- 场景二修改文件版本回退撤销修改情况一&#xff1a;对于工作区的代码&#xff0c;还没有 add情况二&#xff1a;已经 ad…

轻量级音乐元数据编辑器Metadata Remote

简介 什么是 Metadata Remote (mdrm) &#xff1f; Metadata Remote 是一个基于 Web 的音频元数据编辑工具&#xff0c;旨在简化在无头服务器&#xff08;即没有图形用户界面的服务器&#xff09;上编辑音频文件的元数据。用户只需使用 Docker 和浏览器&#xff0c;无需复杂的…

免费使用|共享服务器上线RTX3080(20GB显存)

共享服务器也上架GPU啦 生物信息学中有很多用到GPU的场景&#xff0c;例如我们分享过的&#xff1a;利用GPU加速TensorFlow、部署本地DeepSeek&#xff0c;空间转录组学习手册合辑加速。因此多种GPU供大家选择&#xff1a;RTX5090、4080S、5070显卡上机。为了让此前的CPU服务器…

搭建DM数据守护集群

1环境与规划准备3个kylin 10操作系统的虚拟机&#xff0c;规划IP、端口、安装目录等。说明搭建REALTIME归档模式、事务一致性的数据守护名称项初始主库机器dm1初始备库机器dm2监视器机器dmmon外部业务IP192.168.23.129192.168.23.130192.168.23.131内部心跳IP192.168.23.129192…

AUTOSAR进阶图解==>AUTOSAR_SRS_OCUDriver

AUTOSAR OCU驱动程序详解 AUTOSAR标准输出比较单元驱动程序架构与实现分析目录 1. 概述 1.1 OCU驱动程序简介1.2 功能概述 2. OCU驱动程序架构 2.1 架构图2.2 层次结构 3. OCU驱动程序组件设计 3.1 组件图3.2 接口定义 4. OCU驱动程序状态管理 4.1 状态图4.2 状态转换 5. OCU驱…

InfluxDB 与 HTTP 协议交互进阶(一)

引言 在当今数字化时代&#xff0c;数据处理的高效性和准确性成为了众多领域关注的焦点。InfluxDB 作为一款开源的时序数据库&#xff0c;凭借其高性能、易扩展等特性&#xff0c;在时间序列数据处理中占据了重要地位。而 HTTP 协议作为互联网应用层的核心协议之一&#xff0c…

NAS远程访问新解法:OMV与cpolar的技术协同价值

文章目录前言1. OMV安装Cpolar2. 配置FTP公网地址3. OMV FTP 配置4. OMV FTP远程连接前言 当家庭存储需求突破本地边界时&#xff0c;传统NAS方案往往陷入"连接困境"&#xff1a;复杂的端口转发配置、高昂的公网IP成本、以及始终存在的安全顾虑…开源解决方案OMV虽然…

vue 渲染 | 不同类型的元素渲染的方式(vue组件/htmlelement/纯 html)

省流总结&#xff1a;&#xff08;具体实现见下方&#xff09; vue 组件 ——》<component :is组件名> htmlelement 元素 ——》 ref 、★ v-for ref 或是 ★ vue 的 nextTick 纯 html 结构——》v-html 另外&#xff0c;当数据异步加载时&#xff0c;vue3中如何渲…

Charles中文版深度解析,轻松调试API与优化网络请求

在现代软件开发过程中&#xff0c;调试API、捕获HTTP/HTTPS流量以及优化网络性能是开发者不可避免的挑战。特别是在处理复杂的网络请求和验证API接口的数据传输准确性时&#xff0c;开发者需要一款强大且易于使用的工具。Charles抓包工具凭借其功能强大、界面简洁、易于操作的特…