1.思维导图
2.重要概念的笔记
(1)有向图与无向图
(2)邻接矩阵
有向图由于边具有方向性,因此彼此顶点之间并不能相互达到,所以其邻接矩阵的对称性不再。
无向图的邻接矩阵是一个对称矩阵,是因为边不具有方向性,若能从此顶点能够到达彼顶点,那么彼顶点自然也能够达到此顶点。此外,由于顶点本身与本身相连没有意义,所以在邻接矩阵中对角线上皆为0。
(3)深度优先遍历
遍历顺序为:a b d f e c g
(4)广度优先遍历
遍历顺序为:a b c d f g e
(5)拓扑排序
1.从 DAG 图中选择一个 没有前驱(即入度为0)的顶点并输出。
2.从图中删除该顶点和所有以它为起点的有向边。
3.重复 1 和 2 直到当前的 DAG 图为空或当前图中不存在无前驱的顶点为止。后一种情况说明有向图中必然存在环。
(6)生成树
1.概念:一个连通图的生成树是一个极小连通子图,它含有图中全部顶点,但只有构成一棵树的(n-1)条边。如果在一棵生成树上添加一条边,必定构成一个环。
2.非连通图:一棵有n个顶点的生成树(连通无回路图)有且仅有(n-1)条边,如果一个图有n个顶点和小于(n-1)条边,则是非连通图。
(注意:如果它多于(n-1)条边,则一定有回路。但是,有(n-1)条边的图不一定都是生成树。)
3.最小生成树:图的所有生成树中具有边上的权值之和最小的树。
4.构成生成树的条件:
(1)必须只使用该图中的边来构造最小生成树;
(2)必须使用且仅使用n-1条边来连接图中的n个顶点;
(3)不能使用产生回路的边。
(7)普里姆(Prim)算法
图G
图G的最小生成树
(8)克鲁斯卡尔(Kruskal)算法
图G
图G的最小生成树