离散第20讲图的矩阵表示

Download Report

Transcript 离散第20讲图的矩阵表示

计算机专业基础课程
PowerPoint Template_Sub
1
图的基础知识
2
路径、回路及连通性
3
欧拉图与哈密顿图
4
图的矩阵表示
《离散数学》第20讲
图的矩阵表示
Page 122 to 125
邻接矩阵(adjacency matrix)
设G=<V,E>为一无重边的有向图。其中V={v1,v2,…,vn},那
么nn矩阵A = [aij],称为图G的邻接矩阵,记为A[G]。
当  vi , v j  E

1
aij  

0
当  vi , v j  E
v1
v4
第20讲 图的矩阵表示
v2
v3
1

0
1

1
1
0
1
0
0
1
0
0
0

1
1

0
-4-
有向图的邻接矩阵
V1
V2
V3
第20讲 图的矩阵表示
V5
V4
0

1
0

0
0

0 0 0 1

0 1 0 0
0 0 0 1

0 1 0 0
1 0 1 0 
-5-
无向图的邻接矩阵
v1
v4
v2
v3
第20讲 图的矩阵表示
1

1
1

1

1
0
1
1
1
1
0
1
1

1
1


0
-6-
邻接矩阵的性质
零图的邻接矩阵为
零矩阵
对角线元素aii=1表示 vi上有环
一图的每个顶点以且仅以环为关联的边,其邻接矩阵为 么阵
矩阵对称表示
第i行之和表示
边成对出现
vi的出度
第j列之和表示
vj的入度
有向图矩阵所有元素之和为
无向图的邻接矩阵是
Kn的邻接矩阵是
对称矩阵
对角线元素为0,其余元素为1的矩阵
有向完全图的邻接矩阵是
第20讲 图的矩阵表示
图的边数
全1矩阵
-7-
邻接矩阵与同构
带有下列邻接矩阵的简单图是否同构?
v1
v1
0 0 1


0 0 1
1 1 0


0

1
0

1

1
0
0
1
0
0
0
1
1

1
1

0 
0 1 1


1 0 0
1 0 0


0

1
1

1

第20讲 图的矩阵表示
1
0
0
1
1
0
0
1
1

1
1

0 
v3
v2
v3
v2
v1
v1
v2
v3
v4
v2
v4
v3
-8-
重图和赋权图的邻接矩阵
v1
v2
v4
v1
v3
v2
10
4
6
8
6
4
v4
11
v3
第20讲 图的矩阵表示
v5
1

1
1

1

1
0
2
1
1
2
0
1
1

1
1

0 
 0 10 0 6

10 0 6 8
 0 6 0 11

 6 8 11 0
0 4 4 0

0

4
4

0
0 
  10 

10  6
 6 

 6 8 11
 4 4



8 4
11 4 

 
  
6
-9-
矩阵的运算
设A为图G的邻接矩阵,A=[aij],AT为A的转置矩阵,
ο为矩阵乘运算符。若AοB=C, A=[aij], B=[bij], C=[cij],
n
那么
cij   aik bkj
k 1
用Ak表示k个矩阵A的乘积。
第20讲 图的矩阵表示
-10-
邻接矩阵的运算
令Ak= [aij(k)],那么aij(k)的意义是:G中从顶点vi
到vj的长度为k的拟路径恰为aij(k)条。
v1
v4
v2
1

0
A
1

1

1
0
1
0
0
1
0
0
0

1
1

0 
3

3
3
A 
4

1
2
2
3
1
1
1
1
1
2

1
2

1
v3
( 3)
 a31
= 4,v3到v1有4条长度为3的拟路径,它们是(v3 ,v1 ,
v1 ,v1), (v3 ,v4 ,v1 ,v1),(v3 ,v2 ,v4 ,v1),(v3 ,v2 ,v3 ,v1)。
第20讲 图的矩阵表示
-11-
邻接矩阵的运算
证明:
对k作归纳
k=1时, A1=A=[aij(1)]=[aij] ,显然成立
假设Ak=[aij(k)]中aij(k)对任意i,j均表示vi到vj的长度为k的拟
路径条数,考虑Ak+1=[aij(k+1)]
n
因为aij(k+1)=
 aih ahj  ai1 a1 j  ... ain anj
(k )
(k )
(k )
h 1
而其中aih(k)表示vi到vh的长度为k的拟路径条数,ahj表示vh
到vj的长度为1的拟路径条数,两者乘积代表vi到vj最后一
步经vh的长度为k+1的拟路径条数
n
因此 aij
条数
(k+1)=
 aih ahj 就表示vi到vj的长度为k+1的拟路径
(k )
h 1
证毕
第20讲 图的矩阵表示
-12-
邻接矩阵的运算
AοAT= [bij],那么bij的意义是:有bij个顶点v,使得vi
到v,vj到v都有边(两边交于v)。
bii表示顶点vi的出度。
v1
v4
v2
1

0
A AT  
1

1
1
0
1
0
0
1
0
0
0

1
1

0
1

1
0

0
0
0
1
1
1
1
0
1
1  2
 
0  0

0  2
 
0  1
0
2
1
0
2
1
3
1
1

0
1

1
v3
b31 = 2,有两个顶点v1,v2,使得v3与v1到它们都有边;
b33 = 3,顶点v3的出度为3。
第20讲 图的矩阵表示
-13-
邻接矩阵的运算
ATοA =[bij],那么bij 的意义是:有bij 个顶点v,使得
v到vi , v到vj都有边
bii表示顶点vi的入度。
v1
v2
AT
v4
1

1
A
0

0
0
0
1
1
1
1
0
1
1

0
0

0
1

0
1

1
1
0
1
0
0
1
0
0
0  3
 
1  2


0
1
 
0  1
2
2
0
1
0
0
1
1
1

1
1

2
v3
b31=0,图中确无到v3,v1均有边的顶点;
b44 = 2,而v4的入度正是2
第20讲 图的矩阵表示
-14-
路径矩阵 —引入
 ο为矩阵乘运算符。若AοB=C,
A=[aij], B=[bij], C=[cij],那
n
么
cij   aik bkj
k 1
令Ak= [aij(k)],那么aij(k)的意义是:G中从顶点vi
到vj的长度为k的拟路径恰为aij(k)条。
若不考虑路径条数,只考虑有无
路径,怎样对矩阵进行简化?
1

0
1

1
1
0
1
0
0
1
0
0
0

1
1

0
3

3
3
A 
4

1
2
2
3
1
1
1
1
1
2

1
2

1
a 31 = 4,v3到v1有4条长度为3的拟路径,它们是(v3 ,v1 ,v1 ,v1), (v3 ,
( 3)
v4 ,v1 ,v1),(v3 ,v2 ,v4 ,v1),(v3 ,v2 ,v3 ,v1)。
第20讲 图的矩阵表示
-15-
矩阵的∨和∧运算
设有n维矩阵A、C,定义∨及∧运算如下
若A = [aij],C = [cij],则
A∨C = [dij] dij=aij∨cij
n
A∧C = [eij] eij=
这里
(aik ∧ckj)
k 1
n
n
k 1
k 1
 为连续求∨运算的缩记符, 以下 相同
第20讲 图的矩阵表示
-16-
举例
0 1 1


A  1 1 0
0 0 1


1 0 0


C  0 0 1
1 0 1


 0  1 1  0 1  0  1 1 1

 

A  C  1  0 1  0 0  1  1 1 1
 0  1 0  0 1  1  1 0 1

 

 1 0 1


A  C   1 0 1
 1 0 1


第20讲 图的矩阵表示
(0  1)  (1  0)  (1  1)  1
(0  0)  (0  0)  (1  0)  0
-17-
路径矩阵
v1
v2
v5
v3
v4
B=A∨A(2)∨…∨A(n) ,它的第i,j分量bij=1当且仅当图
G中有vi到vj的路径。B称为图G的路径矩阵(walk
matrix)
B=A∨A(2)∨A(3)∨A(4)∨A(5)
第20讲 图的矩阵表示
1

1
 1

1
1

1 1 1 0

1 1 1 0
1 1 1 0

1 1 1 0
1 1 1 0 
-18-
路径矩阵与可达性矩阵
用A(m)表示A∧A∧…∧A (m个A)
矩阵B=A∨A(2)∨…∨A(n)称为图G的路径矩阵(walk matrix) ,它
的第i,j分量bij=1当且仅当图G中有vi到vj的路径。
令矩阵P=I∨B,其中I为(nn)么矩阵,称P为图G的可达性矩
阵。
v1
v2
v3
P=I∨B
v5
v4
第20讲 图的矩阵表示
1

1
 1

1
1

1 1 1 0

1 1 1 0
1 1 1 0

1 1 1 0
1 1 1 1 
-19-
可达性矩阵与强分图
v1
v2
v3
P=I∨B
v5
v4
第20讲 图的矩阵表示
1

1
 1

1
1

1 1 1 0

1 1 1 0
1 1 1 0

1 1 1 0
1 1 1 1 
-20-
本讲小结
主要内容
图的邻接矩阵表示方法
矩阵变换的实际意义
路径矩阵和可达性矩阵
重点是掌握矩阵与图之间的对应关系
作业
P129
33
第20讲 图的矩阵表示
-21-