度矩阵和邻接矩阵

度矩阵 (D) 和邻接矩阵 (A) 是如何定义和构建的。

无向图的例子

假设我们有一个无向图 (G),包含4个顶点 (V={1,2,3,4}),以及以下边集 (E):

  • 顶点1与顶点2相连
  • 顶点1与顶点3相连
  • 顶点2与顶点4相连
  • 顶点3与顶点4相连
  • 在这里插入图片描述
邻接矩阵 (A)

邻接矩阵 A 是一个 n × n 的方阵(其中 n 是顶点的数量),矩阵中的元素 A i j 表示顶点 i 和顶点 j 是否由一条边相连。对于无向图,邻接矩阵是对称的,即 A i j = A j i 。在这个例子中,邻接矩阵 A 如下所示: 邻接矩阵 A 是一个 n \times n 的方阵(其中 n 是顶点的数量),矩阵中的元素 A_{ij} 表示顶点 i 和顶点 j 是否由一条边相连。对于无向图,邻接矩阵是对称的,即 A_{ij} = A_{ji}。在这个例子中,邻接矩阵 A 如下所示: 邻接矩阵A是一个n×n的方阵(其中n是顶点的数量),矩阵中的元素Aij表示顶点i和顶点j是否由一条边相连。对于无向图,邻接矩阵是对称的,即Aij=Aji。在这个例子中,邻接矩阵A如下所示:

A = ( 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 ) A = \begin{pmatrix} 0 & 1 & 1 & 0 \\ 1 & 0 & 0 & 1 \\ 1 & 0 & 0 & 1 \\ 0 & 1 & 1 & 0 \end{pmatrix} A= 0110100110010110

这里,矩阵的对角线元素都是0,因为一个顶点不会与自己相连;非对角线上的1表示两个顶点之间有边相连。

度矩阵 (D)

度矩阵 D 是一个 n × n 的对角矩阵,其中对角线上的元素 D i i 表示顶点 i 的度,即与顶点 i 相邻的边的数量。对于上面的图,度矩阵 D 如下所示: 度矩阵 D 是一个 n \times n 的对角矩阵,其中对角线上的元素 D_{ii} 表示顶点 i 的度,即与顶点 i 相邻的边的数量。对于上面的图,度矩阵 D 如下所示: 度矩阵D是一个n×n的对角矩阵,其中对角线上的元素Dii表示顶点i的度,即与顶点i相邻的边的数量。对于上面的图,度矩阵D如下所示:

D = ( 2 0 0 0 0 2 0 0 0 0 2 0 0 0 0 2 ) D = \begin{pmatrix} 2 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 \\ 0 & 0 & 2 & 0 \\ 0 & 0 & 0 & 2 \end{pmatrix} D= 2000020000200002

在这个例子中,每个顶点的度都是2,因为图中的每个顶点都有两条边相连。

有向图的例子

如果考虑一个有向图,邻接矩阵的构造方式相同,但不一定对称,因为有向边的存在不意味着反方向也有边。

假设有一个有向图,同样有4个顶点,边集为:

  • 顶点1指向顶点2
  • 顶点1指向顶点3
  • 顶点2指向顶点4
  • 顶点3指向顶点4
    在这里插入图片描述
邻接矩阵 (A)

对于这个有向图,邻接矩阵 (A) 可能是:

A = ( 0 1 1 0 0 0 0 1 0 0 0 1 0 0 0 0 ) A = \begin{pmatrix} 0 & 1 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 \end{pmatrix} A= 0000100010000110

注意,与无向图相比,这里的 (A) 不再是对称的,因为有向边的存在是单向的。

度矩阵 (D)

度矩阵依然记录每个顶点的度数,但在这里我们需要区分入度和出度。
通常的度矩阵关注的是顶点的总度数(出度+入度),但在有向图中,如果我们只考虑出度,度矩阵 (D) 将会是:.
这里注意,若有声明出度矩阵(入度矩阵),则按照要求即可。
下例表示出度
D = ( 2 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 ) D = \begin{pmatrix} 2 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 \end{pmatrix} D= 2000010000100000

这里,顶点1有两条出边,顶点3、顶点2有一条出边,而顶点4没有出边。如果是计算入度矩阵,则相应的对角线元素会反映每个顶点的入边数量。

  • 31
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不易撞的网名

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值