连通图:无向图中,任意两个节点之间都有路径
强连通图:有向图中,任意两个节点A、B,从A到B、从B到A都有路径
连通图边数>=n-1
强连通图边数>=n
有向完全图:任意两个顶点独有两条边相连
无向完全图:任意两个顶点之间都有一条边
n个顶点的有向图最多n(n-1)条边(完全有向图)
n个顶点的无向图最多n(n-1)/2条边
n个顶点的无向连通图至少需要n-1条边
n个顶点的有向连通图至少n条边
n个结点的无向图至少1个连通分量,最多n个连通分量
无向图中顶点度数之和为边数的两倍,有向图中顶点度数之和等于边数
n个顶点e条边的无向图是个森林,则该森林中必有n-e棵树
邻接矩阵 空间复杂度 O(n^2)
邻接表 空间复杂度 无向图 O(n+2e) 有向图O(n+e)
广度优先遍历:
相当于树的层次遍历
邻接表存储时 算法时间复杂度为O(n+e),空间复杂度O(n)
邻接矩阵存储时算法复杂度为O(n^2)
深度优先遍历
相当于树的先序遍历
邻接表存储时 算法时间复杂度为O(n+e)
邻接矩阵存储时 算法时间复杂度为O(n^2)
最小生成树边数为n-1
Prim算法:选择与当前结点距离最短的边加入生成树
Kruskal算法:选取图中最短的边并入生成树中
关键路径
最早发生时间max
最迟发生时间min