-- 图的存储结构(邻接矩阵/邻接表)、拓扑序列
-图的邻接矩阵表示
实际是一个二维数组

-图的邻接表
计算的是出度

-拓扑排序
有向图,入度为0,然后做删除

-- 深度优先搜索,广度优先搜索
深度优先搜索DFS,结合堆栈思想,一个方向变量,直到找不到新的顶点,再退回上一个顶点类似出栈()
广度优先搜索BFS,每次把一个顶点周边所有新的顶点访问完,再拓展到下一层
-- 最小生成树(普利姆算法/克鲁斯卡尔算法)、迪杰特拉算法--用于最短路径计算的
概念:实际上是在一个有权的图,这个图的边都是带权值,这个图是连通图。我们可以用n-1边,将n个点连起来,然后使得这个权值最小
--普利姆算法 必须给出起点,由点找最短边,再找到新的点
--克鲁斯算法 不需要指定起点,每次找最短的边,但注意每次的新边不能属于同一连通分量 (例:修建公路,工程造价..)
连通分量:当前你找到的这些点和这些边,如果是连在一起的,那就属于一个连通分量
本文深入探讨图的存储结构,如邻接矩阵与邻接表,介绍拓扑排序、深度优先与广度优先搜索原理。同时,解析最小生成树算法(普利姆与克鲁斯卡尔)及迪杰特拉算法在最短路径计算中的应用,是理解图论与算法设计的宝贵资源。
2290

被折叠的 条评论
为什么被折叠?



