随笔分类 -  图论---最短路

摘要:题目链接: https://vjudge.net/problem/POJ-2570 题目大意: 一些公司决定搭建一个更快的网络,称为“光纤网”。他们已经在全世界建立了许多站点,这 些站点的作用类似于路由器。不幸的是,这些公司在关于站点之间的接线问题上存在争论,这样“光纤网”项目就被迫终止了,留下的是 阅读全文
posted @ 2018-04-07 13:26 _努力努力再努力x 阅读(157) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-3259 题目大意: 农夫约翰在探索他的许多农场,发现了一些惊人的虫洞。虫洞是很奇特的,因为它是一个单向通道,可让你进入虫洞的前达到目的地!他的N(1≤N≤500)个农场被编号为1..N,之间有M(1≤M≤2500)条路径,W 阅读全文
posted @ 2018-04-07 13:07 _努力努力再努力x 阅读(167) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-3268 题目大意: 有编号为1-N的牛,它们之间存在一些单向的路径。给定一头牛的编号X,其他牛要去拜访它并且拜访完之后要返回自己原来的位置,求所有牛从开始到回家的时间是多少? 思路: 所有牛都回到了家所花费的时间就是这些牛中 阅读全文
posted @ 2018-04-07 11:15 _努力努力再努力x 阅读(235) 评论(0) 推荐(0)
摘要:传送门: Dijkstra Bellman-Ford SPFA Floyd 1.算法思想: 定义一个n阶方阵序列:A(-1) A(0) A(1) A(2) ....... A(n-1) A(-1) [i][j]表示顶点Vi到顶点Vj的直接边的长度,A(-1) 就是邻接矩阵Edge[n][n] A(0 阅读全文
posted @ 2018-04-06 23:05 _努力努力再努力x 阅读(878) 评论(0) 推荐(0)
摘要:传送门: Dijkstra Bellman-Ford SPFA Floyd 1.算法思想 Bellman-Ford算法时间复杂度比较高,在于Bellman-Ford需要递推n次,每次递推需要扫描所有的边,在递推n次的过程中,很多判断是多余的,所以考虑用队列优化,减少不必要的判断,这种算法称为SPFA 阅读全文
posted @ 2018-04-06 22:06 _努力努力再努力x 阅读(1260) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-2240 题目大意: 已知n种货币,以及m种货币汇率及方式,问能否通过货币转换,使得财富增加。 思路: 由于这里问的是财富有没有增加,但是没有源点,所以可以枚举1-n为源点,分别用bellman-ford算法判断是否存在正环, 阅读全文
posted @ 2018-04-06 20:56 _努力努力再努力x 阅读(137) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-1860 题目大意: 我们的城市有几个货币兑换点。让我们假设每一个点都只能兑换专门的两种货币。可以有几个点,专门从事相同货币兑换。每个点都有自己的汇率,外汇汇率的A到B是B的数量你1A。同时各交换点有一些佣金,你要为你的交换操 阅读全文
posted @ 2018-04-06 20:19 _努力努力再努力x 阅读(417) 评论(0) 推荐(0)
摘要:传送门: Dijkstra Bellman-Ford SPFA Floyd 1.Dijkstra算法的局限性 像上图,如果用dijkstra算法的话就会出错,因为如果从1开始,第一步dist[2] = 7, dist[3] = 5;在其中找出最小的边是dist[3] = 5;然后更新dist[2] 阅读全文
posted @ 2018-04-06 19:35 _努力努力再努力x 阅读(6632) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/ZOJ-2750 题目大意: 给定一本字典,字典里有很多成语,要求从字典里的第一个成语开始,运用字典里的成语变到最后一个成语,变得过程就是成语接龙,后一个成语的第一个字必须有前一个成语的最后一个字相等,给定的成语是4位16进制数字,每 阅读全文
posted @ 2018-04-06 17:41 _努力努力再努力x 阅读(225) 评论(0) 推荐(0)
摘要:题目链接: https://vjudge.net/problem/POJ-1135 题目大意: 有N个关键的多米诺骨牌,这些牌通过一些路径相连接,这些路径是由一排其他骨牌构成的。已知每一条路径上的骨牌倒下需要的时间。现在从把编号为1的关键骨牌推倒,问多长时间后所有的骨牌(包括关键牌和它们之间的路径上 阅读全文
posted @ 2018-04-06 17:04 _努力努力再努力x 阅读(382) 评论(0) 推荐(0)
摘要:传送门: Dijkstra Bellman-Ford SPFA Floyd 1、dijkstra算法求解过程: (1)首先设置两个顶点集合T和S S中存放已找到最短路径的顶点,初始时,集合S中只有一个顶点,即源点v0 T中存放当前还未找到最短路径的顶点 (2)在集合T中选取当前长度最短的一条最短路径 阅读全文
posted @ 2018-04-06 16:13 _努力努力再努力x 阅读(11793) 评论(0) 推荐(0)