第七章——图
1.图是由顶点和边组成的数据结构。
2.图的表示法:
数组表示法 邻接矩阵,可达1,不可达0;
网的邻接矩阵,可达长度,不可达无穷;
邻接表
十字链表。
3.图的遍历:
1️⃣深度优先搜素:遍历类似于树的先根遍历。假设初始状态是图中所有顶点未曾被访问,则深度优先搜索可从图中某个顶点v出发,访问此顶点,然后依次从v未被访问到的邻接点出发深度优先遍历图,直至图中所有和v有路径相通的顶点都被访问到,若此时图中尚有顶点未被访问,则另选图中一个未曾访问的顶点做起始点,重复上述过程,直至图中所有顶点都被访问到为止。
2️⃣广度优先搜索:假设从图中某顶点v出发,在访问了v之后,依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访问他们的邻接点,并使先被访问的顶点的邻接点先于后被访问的顶点的邻接点被访问,直至图中所有已被访问的顶点的邻接点都被访问到,同深度优先递推。
4.最小生成树
普里姆算法;
克鲁斯卡尔算法;
5.一个无环的有向图称为有向无环图。
6.拓扑排序:
有某个集合上的一个偏序得到该集合上的一个全序;
顶点表示活动,用弧表示活动间的优先关系的有向图称为顶点表示活动的网,简称AOV-网。
排序方式:
在有向图中选一个没有前驱的顶点并输出;
从图中删除该顶点和所有以它为尾的弧。
重复上述两步。
7.关键路径:
在AOE-网(即边表示活动的网)中,路径长度最长的路径叫做关键路径;关键路径上的所有活动都是关键活动。
从前往后正序时为ve,取最大值;
从后往前逆序时为vl,取最小值;
8.若用n表示图中顶点数,则有n(n-1)/2条边的图称为完全无向图。
9.有n(n-1)/2条边的无向图称为完全图,有n(n-1)条弧的有向图称为有向完全图。
10.在求最小生成树的两种算法中,克鲁斯卡尔算法适合于稀疏图。
11.数据结构中的迪杰斯特拉算法是用来求最短路径。
12.对于一个具有n个顶点和e条边的有向图和无向图,在其对应的邻接表中,所含边节点分别有e个和2e个。
13.AOV网是一种带权的有向无环图。