众所周知,这两个算法一个是求最小生成树,一个是求单点源的最短路径,相似之处:
1、贪心
2、O(n^2)外面n-1重循环(Prim将n-2个点加入到树,Dijkstra将n-2个点更新到V0的距离)
3、就近原则,每次更新都是第i个点连出去的节点。
最不一样的地方是dist数组
dist代表Prim中集合A到集合B的所有最短边,dist代表Dijkstra中V1-Vn到V0的最短路径,大家应该可以看出区别了。
Prim中的dist代表节点到最小生成树的最小距离。
Dijkstra中的dist代表节点到V0中的最小距离。