最短路算法入门
最短路问题是算法竞赛中非常常见的一类问题,在这里我们只需要考虑有向图上的算法,因为无向图是特殊的有向图(对于无向图中的每条边 u ↔ v u\leftrightarrow v u↔v都可以转化为有向图中的 u → v u\rightarrow v u→v和 v → u v\rightarrow u v→u)
图的存储
图的存储一般有两种形式:
1、邻接矩阵存储,开一个二维数组 g [ N ] [ N ] g[N][N] g[N][N],其中 g [ i ] [ j ] g[i][j] g[i][j]表示 i i i与 j j j之间的边权。
2、邻接表存储,使用数组模拟链表为每个点开出单链表,分别存储该点的所有邻边。
最短路算法