摘要:
SPFA顾名思义就是更快的最短路算法,是Bellman ford算法的优化,SPFA的平均复杂度大约是O(K*|E|),在一般情况下K大约是小于等于2的数,但是总有人对你心怀不轨,构造一组SPFA最坏情形下的数据来卡你,这时候SPFA的复杂度可以达到接近二次指数。SPFA的优点在于可以判断负环,这要 阅读全文
摘要:
题目链接:http://icpc.njust.edu.cn/Problem/Hdu/6026/ 题意大致是:给定一个图,要求删边使他变成树,使得每个点到0的距离就是原图中0到这个点的最短路径。其实就是最短路树。 证明1: 对于每个结点我们只要知道有多少条路径到它的距离是最短路长度,记为cnt,那么就 阅读全文
摘要:
题目链接:http://icpc.njust.edu.cn/Problem/Hdu/2112/ 只要需处理一下字符串,给他个编号再跑一半dijkstra就行。 代码如下: 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef unsig 阅读全文
摘要:
题目链接:https://www.luogu.com.cn/problem/P1339 朴素dijkstra算法的复杂度是O(n^2),用堆优化的dijkstra复杂度是O(nlogn)的。在本题中前向星存边的时间消耗大约是113ms,空间消耗大约是8M,而在矩阵存边中时间消耗大约是125ms,空间 阅读全文
摘要:
直接上代码: #include<bits/stdc++.h> using namespace std; typedef unsigned int ui; typedef long long ll; typedef unsigned long long ull; #define pf printf # 阅读全文