图的表示

邻接矩阵(Adjacent Matrix)

image-20191014164712503

邻接表(Adjacent Matrix)

image-20191014164759194

邻接表适合表示稀疏图(Sparse Graph)

邻接矩阵适合表示稠密图(Dense Graph)

稀疏图

image-20191014165406186

稠密图和完全图

image-20191014165515525

寻路

获得两点之间的一条路径

image-20191015103539741

图的深度优先遍历-时间复杂度

稀疏图(邻接表):O(V+E)

稠密图(邻接矩阵):O(v^2^)

深度优先遍历算法-有向图

  • dfs 查看是否有环- 有向图

广度优先遍历和最短路径

借助队列实现

image-20191015105139728

广度优先遍历求出了无权图的最短路径

图的广度优先遍历-时间复杂度

稀疏图(邻接表):O(V+E)

稠密图(邻接矩阵):O(v^2^)

无权图的应用- 迷宫生成,PS抠图

flood fill

魔棒抠图 连通分量

image-20191015110344923 image-20191015110427920

扫雷

image-20191015110611365

走迷宫、 迷宫生成

迷宫的本质是一棵树 本质是一个生成树的过程

image-20191015110646483

不能只用一种方式遍历, 随机队列遍历

image-20191015111359237

欧拉路径 哈密尔顿路径

image-20191015111453393

二分图

image-20191015111532614

同学选课

地图着色