数据结构 — 图的概述

原创 2015年11月19日 14:56:26

一、基础知识


1、欧拉闭迹:每个顶点的度均为偶数,才可能存在从任意顶点出发,经过所有边恰好一次,并最终回到出发顶点的走法。

2、定义:图G = (V,E)由有穷非空集合V(G)-> 顶点(vertex) 和 有穷允空集合E(G) -> 边(edge)构成。

3、分类:无向图 ->(v0,v1)和(v1,v0)表示同一条边,有向图 ->(v0,v1)表示顶点v0为尾,顶点v1为头的边,即v0指向v1。

4、概念:

1)限制:(1)不能有自身环 (2)同一条边在图中不能出现两次或者两次以上即多重图

2)完全图:具有边数最多的图,对于n个顶点的无向图,边数为 n*(n-1)/2;对于n个顶点的有向图,边数为n(n-1)。

3)边(v0,v1)与v0和v1关联;边(v0,v1)、(v0,v2)和(v0,v3)关联于 v0。

4)简单路径:路径上除了起点和终点可能相同外,其余顶点都互不相同。环路(回路)是起点和终点相同的简单路径。

5)连通分支,即分支,无向图中的极大连通子图;有向图G每对不同的顶点vi和vj,都存在vi到vj 以及vj到vi的有向路径则为强连通;强连通分支是有向图的极大强连通子图。

6)顶点的度(degree)是关联与该顶点的边的条数;入度(in-degree)定义为  箭头指向v的边数;出度(out-degree)相反;

7)   边(edge)带权值(weight)的图成为网络(network)。


二、图的存储(之后要写几个示例,这里用文字简单说说)

(1)邻接矩阵 (2)邻接表(适合稀疏图)(3)逆邻接表(方便求顶点的度)(4)邻接多重表(方便找到第二顶点和标记扫过的边)


三、图的连通性


1、连通

在无向图G中,v0 与 v1 之间存在一条路径,称v0 与 v1 是连通的;G为无向图,所以必然存在一条v0到v1的路径;当任意两个节点vi 与 vj之间都存在一条路径,则称无向图G是连通的。

2、连通分支

在无向图G中,一个极大连通子图则称为无向图G的连通子图。

3、强连通

在有向图G中,任意两个节点vi与 vj之间 可以任意到达(vi -> vj 或 vj ->vi)则称该有向图G是强连通的。

4、强连通分支

强连通分支时有向图的极大强连通子图。

5、关节点

在图G中,存在节点v ,当删除该节点以及关联在该节点上的所有边后,得到的图G’至少包含两个连通分支,那么该节点v 则成为图G 的关节点。

6、双连通图

双连通图是没有关节点的连通图。

7、双连通分支

在图G中一个最大的双连通子图。

8、求解图的双连通分支的思路

1)最大的双连通子图 -> 双连通图 -> 关节点

2)如果顶点v是深度优先生成树的根结点,且v至少有两个儿子,则v为关节点;如果v 不是生成树的根节点,那么当且仅当v有个儿子w,使得low(w)>= dfn(v),则v为关节点。

注释:

dfn(v):深度优先编号,在深度优先搜索过程中被访问的顺序。

low(v):从v 出发,经过一条由w形成的路径 和 一条回退边所能到达的具有最小深度优先编号的  顶点的编号。(说白了就是,他儿子节点能回到的最小深度优先编号,如果比他大,说明该点是关键点)

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

数据结构—概述

由于参加自学考试,针对数据结构进行了专门的复习,从中不仅仅是获得了知识,更多的是将理论知识转换为实际应用,从而解决我们遇到的各种问题。 数据结构(Data Structure)是将数据进行组织利用算法...

数据结构随笔—图

图分为有向图和无向图。 图中的数据结构通常称为顶点。有n(n-1)/2条边的无向图称为完全图。有n(n-1)条边的有向图成为有向完全图。 图的边或者弧具有与它相关的树,这种与图的边或者弧相...

《数据结构导论》—第一遍思维导图

一年两次的自考学习在近期已经开始了,小编已经考过3次了,所以呢,对于自考,其实只要明白它其中的套路,有自己的学习方法,那么最后把自考考过就完全不是问题啦。最近学习了《数据结构导论》,接下来就跟着小编一...

数据结构5—图-邻接表 java实现

一、概述邻接表处理方法: 用一位数组存储顶点(为何不用单链表存储?数组可以较容易获得读取顶点信息),此外,每个数据元素还存储指向第一个邻接点的指针; 每个顶点Vi的所有邻接点构成一个线性表。data:...

数据结构—非连通图的遍历

/* 非连通图的遍历。 */ #include #include #include #define MAXV 50 typedef int InfoType; using namespace s...

数据结构—图II

图的遍历          定义:图的遍历是指从图中某一顶点出发,按照某种搜索方法沿着图中的边对图中的所有顶点访问一次且仅访问一次。        ...

数据结构 — 图 之 广度优先遍历

【描述】:  图的bfs 【输入】: 8 1 2 -1 0 3 4 -1 0 5 6 -1 1 7 -1 1 7 -1 2 7 -1 2 7 -1 3 4 ...

《数据结构导论》—第二遍思维导图

在第一遍学习的基础上进行第二遍课本内容的学习,第二遍学习内容主要就是要详细的读一遍课本上每一章的内容,为第三遍的做题打好基础。

数据结构之—图

1.图的两种遍历方法: 1) 深度优先搜索遍历 深度优先搜索DFS遍历类似于树的前序遍历。其基本思路是: a) 假设初始状态是图中所有顶点都未曾访问过,则可从图G中任意一顶点v为初始出发点,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)