在线性表中,每个元素之间只有一个直接前驱和一个直接后继,
在树形结构中,数据元素之间是层次关系,并且每一层上的数据元素可能和下一层中多个元素相关,但只能和上一层中一个元素相关。

但这仅仅都只是一对一,一对多的简单模型,如果要研究如人与人之间关系就非常复杂了。

一、图的定义

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

图中,小蝌蚪表示顶点V,小蝌蚪放在一块就是一个V的集合;
顶点与顶点之间的连线称为边,所有的边放在一起就是E(边的集合)。

图.png

对于图的定义,我们需要明确几个注意的地方:

  • 线性表中我们把数据元素叫元素,
    树中叫结点,
    在图中数据元素我们则称之为顶点(Vertex)。
  • 线性表可以没有数据元素,称为空表,
    树中可以没有结点,叫做空树,
    而图结构强调顶点集合V要有穷非空。
  • 线性表中,相邻的数据元素之间具有线性关系,
    树结构中,相邻两层的结点具有层次关系,
    而图结构中,任意两个顶点之间都可能有关系,顶点之间的逻辑关系用边来表示,边集可以是空的。
1.无向边

无向边:若顶点Vi到Vj之间的边没有方向,则称这条边为无向边(Edge),用无序偶(Vi,Vj)来表示。

无向边.png

上图G1是一个无向图,G1={V1,E1},其中
V1={A,B,C,D},
E1={(A,B),(B,C),(C,D),(D,A),(A,C)}

2.有向边

有向边:若从顶点Vi到Vj的边有方向,则称这条边为有向边,也成为弧(Arc),用有序偶

3.简单图

简单图:在图结构中,若不存在顶点到其自身的边,且同一条边不重复出现,则称这样的图为简单图。

以下两个则不属于简单图:

AD同一条边重复出现.png

A指向了自己.png

4.无向完全图

无向完全图:在无向图中,如果任意两个顶点之间都存在边,则称该图为无向完全图。含有n个顶点的无向完全图有n*(n-1)/2条边。

无向完全图.png

5.有向完全图

有向完全图:在有向图中,如果任意两个顶点之间都存在方向互为相反的两条弧,则称该图为有向完全图。含有n个顶点的有向完全图有n*(n-1)条边。

有向完全图.png

6.稀疏图和稠密图

稀疏图和稠密图:这里的稀疏和稠密是模糊的概念,都是相对而言的,通常认为边或弧数小于n*logn(n是顶点的个数)的图称为稀疏图,反之称为稠密图。
有些图的边或弧带有与它相关的数字,这种与图的边或弧相关的数叫做权(Weight),带权的图通常称为网(Network)。

网.png

假设有两个图G1=(V1,E1)和G2=(V2,E2),如果V2⊆V1,E2⊆E1,则称G2为G1的子图(Subgraph)。

子图.png

二、图的顶点与边之间的关系

1.无向图顶点与边之间的关系

对于无向图G=(V,E),如果边(V1,V2)∈E,则称顶点V1和V2互为邻接点(Adjacent),即V1和V2相邻接。边(V1,V2)依附(incident)于顶点V1和V2,或者说边(V1,V2)与顶点V1和V2相关联。

顶点V的度(Degree)是和V相关联的边的数目,记为TD(V),如下图,顶点A与B互为邻接点,边(A,B)依附于顶点A与B上,顶点A的度为3。

无向图顶点与边之间的关系.png

2.有向图顶点与边之间的关系

对于有向图G=(V,E),如果有

三、连通图

1.无向的
在无向图G中,如果从顶点V1到顶点V2有路径,则称V1和V2是连通的,如果对于图中任意两个顶点Vi和Vj都是连通的,则称G是连通图(ConnectedGraph)
下图左侧不是连通图,右侧是连通图:

非连通图与连通图.png

无向图中的极大连通子图称为连通分量。
注意以下概念:

  • 首先要是子图,并且子图是要连通的;
  • 连通子图含有极大顶点数;
  • 具有极大顶点数的连通子图包含依附于这些顶点的所有边。

连通分量.png

2.有向的
在有向图G中,如果对于每一对Vi到Vj都存在路径,则称G是强连通图。
有向图中的极大强连通子图称为有向图的强连通分量。
下图左侧并不是强连通图,右侧是。并且右侧是左侧的极大强连通子图,也是左侧的强连通分量。

强连通分量.png

3.连通图的生成树定义

所谓的一个连通图的生成树是一个极小的连通子图,它含有图中全部的n个顶点,但只有足以构成一棵树的n-1条边。

连通图的生成树定义.png

如果一个有向图恰有一个顶点入度为0,其余顶点的入度均为1,则是一棵有向树。

有向树.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值