【数据结构】第6章 图

157 阅读2分钟

提示
仅供个人回顾参考

  • 基本概念
    • 有向图
    • 无向图
    • 简单图, 多重图
    • 完全图
    • 子图
    • 连通, 连通图, 连通分量
    • 强联通图,强连通分量
    • 生成树, 生成森林
    • 顶点的度, 入度, 出度
    • 边和权和网
    • 稠密图,稀疏图
    • 路径,路径长度和回路
    • 简单路径,简单回路
    • 距离
    • 有向树
  • 存储结构
    • 邻接矩阵法
    • 邻接表法
    • 十字链表
    • 邻接多重表
  • 基本操作
    • 判断是否存在边
    • 插入顶点
    • 删除顶点
    • 列出邻接的边
    • 边不存在, 添加边
    • 返回顶点第一个邻接点
    • 等等
  • 遍历(主要是无权图)
    • 广度优先搜索(BFS-Breadth First Search)
      • 邻接矩阵存储表示唯一, 广度优先生成树唯一
      • 邻接表存储表示不唯一, 广度优先生成树不唯一
    • 深度优先搜索(DFS-Depth First Search)
      • 性能分析:空间复杂度O(V)O(|V|), 邻接矩阵时间复杂度O(V2)O(|V^2|), 邻接表时间复杂度O(V+E)O(|V|+|E|)
      • 连通图才能生成树,否则是深度优先森林
    • 图遍历与图连通性
      • 无向图非连通, 一次不能遍历完所有顶点
      • 有向图都有路径, 则能访问所有顶点
  • 图应用
    • 最小生成树
      • Prim普里姆算法-类似最短路径Dijkstra迪杰斯特拉算法 (基于贪心算法策略)
      • Kruskal克鲁斯卡尔算法 (基于贪心算法策略)
    • 最短路径(带权图)
      • Dijkstra迪杰斯特拉算法
      • Floyd弗洛伊德算法
  • 有向无环图
    • 定义
      • 相同子式的共享
    • AOV网(顶点表示活动的网格)
      • 定义
        • 有向无环图
        • 边无权值,仅表示前后关系
        • 顶点表示活动,有向边表示活动先后关系
    • AOE网(用边表示活动的网格)
      • 定义
        • 有向无环图
        • 边有权值
        • 顶点表示事件,有向边表示活动,边上权值表示开销
      • 基本概念
        • 关键路径: 最大路径长度的路径
        • 关键活动: 关键路径上的活动
        • 关键活动参量
          • 事件最早发生时间
          • 事件最迟发生时间
          • 活动最早发生时间
          • 活动最迟发生时间
          • 一个活动最迟与最早开始时间差额
      • 性质
        • 顶点事件发生,各边代表的活动开始
        • 各边代表的活动结束,整个工程结束
  • 拓扑排序
    • 基本概念
      • 每个顶点出现且只有一次
      • 顶点A在B前,则图中不存在B到A的路径
    • 算法