♥☺十一、第十一节 邻接表
- 定义:把数组和链表结合一起来存储图
举例
逆邻接表
♥☺十二、第十二节 十字链表
- 十字链表整合了邻接表和逆邻接表,表示的是弧(非点)
蓝色表示出度,红色表示入度。
- 邻接多重表(选修)
- 边集数组
弗洛伊德的冰山理论
♥☺十三、第十三节 图的遍历
- 深度优先遍历:DFS, 可以约定右手原则,将自己代入结点,即分岔路始终向右手边走,每经过一个顶点,做记号。走过的就往后退,直到回到原始顶点。
蓝为我们走过的路,红色为选项。类似于树的前序遍历。
- 广度优先遍历:BFS,类似于树的层序遍历
出队列顺序-图的广度优先遍历顺序
♥☺十四、第十四节 最短路径算法
- 迪杰斯特拉算法时间复杂度:O(n^2)(求一个顶点到所有顶点的最短路径)
- 弗洛伊德算法时间复杂度:O(n^3)(求所有顶点到所有顶点的最短路径)
- 拓扑排序:
- AOV网:在一个表示工程的有向图中,用顶点表示活动,用弧表示活动之间的优先关系,这样的有向图为顶点表示活动的网,称之为AOV网。
- AOV网中的弧表示活动之间存在的某种制约关系,且AOV网不能存在回路。
- 定义:即前面的指向后面的
D.
- 关键路径
最长时间路径(关键活动)
当etv=ltv时,即事件的最早发生时间=事件的最晚发生时间时,事件的连接线就是关键路径。
- 查找算法:
- 静态查找:顺序查找(线性查找)算法,折半查找算法,斐波那契查找算法
- 动态查找:二叉排序树,散列表结构