最短路径
文章平均质量分 84
爱抠脚的coder
这个作者很懒,什么都没留下…
展开
-
最短路(Floyd算法)
最短路径问题使用Floyd算法:(结点编号从1-n)使用邻接矩阵来保存原图,那么此时邻接矩阵中edge[i][j]的值即表示从结点i和结点j,中间不经过任何结点时距离的最小值(若他们之间有多条边,取最小权值保存在邻接矩阵,也可能是去无穷或者-1,这样来表示不可达);在图的邻接矩阵表示法中,edge[i][j]表示结点i和结点j中间不经过任何结点时的最短的路径,那么依次为中间允许经过的结点添加结原创 2017-09-24 18:07:08 · 612 阅读 · 0 评论 -
最短路径问题
题目网址:最短路径问题这个题目比之前使用Dijstra算法求解最短路径的差别在于多了一个花费最小的要求,不仅需要求出起点到终点的最短路径,还需要再有多条路径的时候,,选择哪个花费最少的,所以就比之前博客的那道题目多了一点:路径长度距离不一样的时候,选择距离小的那个,但是在距离一样的时候,选择那个花费最小的,所以其他基本不变,只是在if循环语句的时候多一条判断条件。读者可以对比一下:原创 2017-09-24 21:18:03 · 491 阅读 · 0 评论 -
最短路径(需要使用高精度整数)
题目网址:最短路径题目解析:这道题的话,跟之前的题目相比就是他的距离是很大的数,所以不能使用int来表示,所以我定义了bigint来表示大整数,同时需要跟原创 2017-09-25 10:00:02 · 356 阅读 · 0 评论 -
最短路(Dijstra算法)
题目网址:最短路这个问题之前使用的是floyd的算法,这里介绍另外一种Dijstra算法。Dijstra算法流程:(1)初始化,集合k加入节点1,节点1到自己的最短路径为0,到其他节点为INF;(2)遍历与集合k节点直接相连的边(u,v,c),其中u属于集合k,v不属于k,计算由结点1出发按照已经得到的最短路到达u,再由u经过该边到达v时的路径长度。比较所有与集合k中结点直接相连的原创 2017-09-24 19:58:55 · 1116 阅读 · 0 评论 -
I wanna go home
题目网址:I wanna go home题目大意:给出n个城市 ,给出m对城市之间的距离,再给出每一个城市的所属的阵营,要求求出从城市1到城市2的最小的路径长度,城市1总是属于阵营1的,城市2是属于阵营2的。这条路径上最多只有一次从不同阵营穿过的路径,其实原创 2017-09-25 14:37:25 · 583 阅读 · 0 评论