图的概念
完全图
无向图的完全图可以这么想:如果有4个点,每个点都会连向3个点,每个点也都会有来回的边,所以除以2
有向图就不用除以2
连通分量
不多解释
极大连通子图的意思就是让你把所有连起来的都圈出来
强连通图和强连通分量
这个是特指有向图的,有向图很强
入度,出度
每个边算2次,一条边就是出度和入度
并且等于边数
题目
1
bro,你是不是想 7-1 = 6?
那你完了,这里有个狗屎关键词 任何情况下 ,要考虑最坏的
那你是不是想(7 * 6)/2 = 21
那你完了,因为题目还有个狗屎关键词 最少
所以正确的思路就是,你其他6个顶点全部都拉满了,最后再多一条连到第七个顶点,这样你再怎么阴间操作,你都不可能孤立任何一个顶点
所以是(5*6)/2 + 1 = 16
c
2
这个性质记下,这里是至少
a
3
(4*5)/2 + 1 = 11
一样,无论你怎么针对,都能连到一起去
d
4
A : 16条就一定连通了
B : 22条就一定连通了
C: 29条才连通 ,又要至少,所以选C
5
均小于3,又要顶点最少,那可以把他们的度全变成2来保证顶点的个数最少
b
6
其实从上面的题可以知道,连通的条件很苛刻的
所以举例子就知道了
选D , 6 > 4+1, 6个顶点5条就能连通,但这里最多才4条
图的存储
邻接矩阵
看图就行了
每个顶点的出度是看行的,入度是看列的
无向图的邻接矩阵是对称的(并且唯一)
对称的不一定是无向图,但不对称的一定不是无向图
无向图每行和对应的每列 度是一样的,也就是出度和入度一样
因为存很多0没有意义,谁是0
邻接表
有向图只看出度
其他的十字链表什么的最终季再说,各种代码也是
题目
1
出度是看行的,入度是看列的
c
图的遍历
这小结只考过选择题,没有代码题
这里广度优先,从2开始的,第一层先是1和6,第二层对应着1的5和6的3,7,第三层对应着5没有,3是4,7是8
当然是不唯一的,还可以这样
然后是深度遍历
深度遍历就是愣头青,一直冲
一开始是2,随便走1还是6,这里走1,然后是5,然后回去回到1再回到2 ,此时已经记下了215
然后2还有方向走6,6这里走3还是7都行,我们走3,3这里走4还是7都行,我们走7,然后走8,然后走4,然后原路返回就行
题目
1
a应该是bhf
d
2
自己走,愣头青
d