19.0、C语言数据结构——图 ( 2 )

19.0、C语言数据结构——图 ( 2 )

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

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

        对于有向图 G = ( V , E ),如果有 <V1,V2>∈E,则称顶点 V1 邻接到顶点V2 ,顶点 V2 邻接自顶点 V1;

        以顶点 V 为头的弧的数目称为 V 的入度(InDegree),即为 ID(V),以 V 为尾的弧的数目称为 V 的出度(OutDegree)记为 OD(V),因此顶点 V 的度为 TD(V) = ID(V) + OD(V);

        下图顶点 A 的入度是 2,出度是 1 ,所以顶点 A 的度是 3;

  

无向图G = (V,E)中从顶点 V1 到顶点 V2 的路径(path);

下图用红线列举了从顶点 B 到顶点 D 的四种不同路径:


 

如果 G 是有向图,则路径也是有向的;

下图用红线列举顶点 B 到顶点 D 的两种路径,而顶点 A 到顶点 B 就不存在路径了:

路径的长度是路径上的边或弧的数目:

        第一个顶点到最后一个顶点相同的路径称为回路或环(Cycle)

        序列中顶点不重复出现的路径称为简单路径,除了第一个顶点和最后一个顶点之外,其余顶点不重复出现的回路,称为简单回路或简单环;

        下图左侧是简单环,右侧不是简单环:

连通图:

        有无向图G中,如果从顶点V1到顶点V2有路径,则称V1和V2是连通的,如果对于图中任意两个顶点Vi 和 Vj都是连通的,则称G是连通图(ConnectedGraph);

        下图左侧不是连通图,右侧是连通图:

无向图中的极大连通子图称为连通分量;

注意以下概念:

        - 首先要是子图,并且子图是要连通的;

        - 连通子图含有极大顶点数;

        - 具有极大顶点数的连通子图包含依附于这些顶点的所有边;

在有向图 G 中,如果对于每一对 Vi 到 Vj 都存在路径,则称 G 是强连通图:

        有向图中的极大强连通子图称为有向图的强连通分量;

        下图左侧并不是强连通图,右侧是;并且右侧是左侧的极大强连通子图,也是左侧的强连通分量;

最后我们再来看连通图的生成树定义;

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值