正常的Prim算法翻车惹,因为正常的复杂度为
2
m
l
o
g
m
2mlogm
2mlogm(优先队列实现),但是现在用到的一共有
n
2
n^2
n2条边,正常算法
2
n
2
l
o
g
n
2
2n^2logn^2
2n2logn2,
n
n
n是
2000
2000
2000的,也就是
8
∗
1
0
7
8*10^7
8∗107,而实际上用邻接矩阵实现的,对于以前来说暴力的算法现在只有
2
n
2
2n^2
2n2的复杂度,反而更加优秀。
我们考虑,对于以前
n
n
n和
m
m
m较大,但是他们几乎相等或者差不了多少,复杂度只会有
2
n
l
o
g
n
2nlogn
2nlogn但是原始算法会是
n
2
n^2
n2。但是对于完全图或者近似完全图,这时候
m
≈
n
2
m≈n^2
m≈n2,那么优先队列优化反而多了个
10
10
10的复杂度。
B
O
O
M
!
BOOM!
BOOM!爆炸