首先写第三点,我觉得是最重要的,dijkstra算法的优化,从复杂度O(n方)复杂度降到 算是最佳的最短路径方法,非常稳定。下面是代码
#include
using namespace std;
const int maxn=200005;
typedef long long ll;
const int inf=0x7fffffff;
struct node
{
int to,dis,nxt;
}e[1000005];
int head[maxn],n,m,s,t,u,v,w,nxt,cnt;
ll dist[maxn],minn;
bool vis[maxn];
void add_edge(int from,int to,int dis)
{
e[++cnt].to=to;
e[cnt].dis=dis;
e[cnt].nxt=head[from];
head[from]=cnt;
}
struct node1
{
int dis,pos;
bool operator
关注
打赏