day 13 (三)图

148 阅读1分钟

图:

树是一种特殊的图,它是一种无环连通图。

图可以分为以下几个方面:

  1. 存储方式:

    • 有向图:
      • 邻接矩阵:使用二维数组 g[a][b] 来储存节点 a 到节点 b 之间的信息。
      • 邻接表:使用链表或者类似拉链法哈希的结构来表示,常用于存储。
    • 无向图:是一种特殊的有向图,两个方向的有向图。
  2. 遍历方式:

    • 深度优先搜索:从起始节点出发,沿着一条路径一直深入,直到无法继续为止,然后回溯到前一个节点,继续探索其他路径。
    • 宽度优先搜索:从起始节点开始,逐层遍历图中的节点,先访问当前层的所有节点,再访问下一层的节点。
  3. 拓扑序列(仅适用于有向图):拓扑序列是一个节点的线性排列,满足以下条件:如果存在一条从节点 A 到节点 B 的有向边,那么在拓扑序列中,节点 A 将出现在节点 B 的前面。

    • 入度:指向某个节点的边的数量,即有多少条边指向该节点。
    • 出度:从某个节点出发的边的数量,即有多少条边从该节点指出。

图bfs的例子:

code.png

拓扑排序:

code.png