您的位置:首页 > 其它

最小生成树&最短路模板

2016-09-03 18:45 239 查看
最小生成树是从一个节点到另一个节点的最小边集;

最短路是带权路径,计算权值最小。

最小生成树要经过每一个点,而最短路只需达到某两点的路径权值最小

两个模板区别(开始都保存了1到其他点的距离在dis里,然后更新dis)

dijkstra是每次找最小的dis[p],再用dis[p]+mapn[p][j]<dis[j],更新dis[j];

prime是每次找到最小的dis[p],加进minn里,再用mapn[pos][j]<dis[j],更新dis[j]
更新不同在于,

在dis[j]中

dijkstra 保存的是从起始点到每一个点的最小值,每次遍历更新这个值,为找到某两个点之间的最小值

prime 保存的是已知点集到剩余的每一个点的最小值,如1找到了2,本来1到4的距离为4,即dis[4]为4,而2到4的距离为3,却由于点集新加入了2,所以更新dis[4]为3,以至于求出经历全部点的最小值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: