算法总结(二)图
来源:互联网 发布:基坑监测数据处理软件 编辑:程序博客网 时间:2024/06/11 22:06
图
图是算法中应用非常广泛的数据结构
- 图
- 图的定义
- 图有两个集合
- 图与树的不同点
- 无向图
- 有向图
- 图的性质
- 图的度
- 连通图
- 连通图性质
- 图的定义
图的定义
图有两个集合
- 非空集合V(G) 代表图所有的节集
- 可能为空的集合E(G) 代表图的边集
- 节点的数量记为 |V|, 边的数量记为|E|
图与树的不同点
- 不需要root节点
- 没有父子关系
- 可能有多条边连接两个节点
无向图
如果u,v是两个节点
那么 (u,v) 表示一条无向边
有向图
如果u,v是两个节点
那么<u,v> 表示一条有向边 节点u是起点 v是终点
图的性质
- 1.无向图的边是无序的 (v0, v1) = (v1,v0)
- 2.有向图的边是有序的
<v0,v1>!=<v1,v0> - 3.完全图所拥有的的边的数量:
- 无向图 n(n-1)/2
- 有向图 n(n-1)
- 4.如果图的边数
e<nlog(n) 该图为稀疏图,否则为稠密图 - 5.边权
图的度
图中的度:所谓顶点的度(degree),就是指和该顶点相关联的边数。
在有向图中,度又分为入度和出度。
入度 (in-degree) :以某顶点为弧头,终止于该顶点的弧的数目称为该顶点的入度。
在某顶点的入度和出度的和称为该顶点的度
(a)中Vo的入度为1,出度为2,度为3。
(b)中V2的度为3。
连通图
在图论中,连通图基于连通的概念。在一个无向图 G 中,若从顶点vi到顶点vj有路径相连(当然从vj到vi也一定有路径),则称vi和vj是连通的。如果 G 是有向图,那么连接vi和vj的路径中所有的边都必须同向。如果图中任意两点都是连通的,那么图被称作连通图。如果此图是有向图,则称为强连通图(注意:需要双向都有路径)。图的连通性是图的基本性质。
- 连通分量:无向图 G的一个极大连通子图称为 G的一个连通分量(或连通分支)。连通图只有一个连通分量,即其自身;非连通的无向图有多个连通分量。
- 强连通图:有向图 G=(V,E) 中,若对于V中任意两个不同的顶点 x和 y,都存在从x到 y以及从 y到 x的路径,则称 G是强连通图。相应地有强连通分量的概念。强连通图只有一个强连通分量,即是其自身;非强连通的有向图有多个强连分量。
- 单向连通图:设G=
< V,E> 是有向图,如果u->v意味着图G至多包含一条从u到v的简单路径,则图G为单连通图。 - 弱连通图:将有向图的所有的有向边替换为无向边,所得到的图称为原图的基图。如果一个有向图的基图是连通图,则有向图是弱连通图。
连通图性质
一个无向图 G=(V,E) 是连通的,那么边的数目大于等于顶点的数目减一:|E|>=|V|-1,而反之不成立。
如果 G=(V,E) 是有向图,那么它是强连通图的必要条件是边的数目大于等于顶点的数目:|E|>=|V|,而反之不成立。
没有回路的无向图是连通的当且仅当它是树,即等价于:|E|=|V|-1。
0 0
- 算法总结(二)图
- 排序算法总结(二)
- 排序算法总结(二)
- 查找算法总结(二)
- 查找算法总结(二)
- 查找算法总结(二)
- 查找算法总结(二)
- 排序算法总结(二)
- 排序算法总结(二)
- 排序算法总结(二)
- 数据结构和算法总结(二)
- 排序算法 总结&思考(二)
- 排序算法总结(二)基数排序
- Condensation算法学习总结(二)
- 排序算法总结(二)归并法
- 排序算法大总结(二)
- 数据结构-各类排序算法总结(二)
- 常见排序算法总结(二)
- openwrt 安装 Mosquitto
- Highcharts, PHP制作实时更新的动态线性图
- java使用redis时,中文乱码问题
- Spring整合JMS(消息中间件)实例
- java SSM框架批量上传实现
- 算法总结(二)图
- iOS实现热修复的几种方案
- Android读取桌面安装的应用
- Linux文件描述符(特别概念三)
- Universal-Image-Loader类库使用
- Linux PHY几个状态的跟踪
- spring cloud微服务框架 第二天
- Ext系列form控件篇
- Oracle 11gR2 RAC Database使用emca配置集群dbconsole