一般使用kruskal(克鲁斯卡尔)(mlogm)
对于稀疏图,用朴素prim(n^2)
prim:每次选择和当前已经构建出的连通块相连,且权重最小的边,加入当前连通块。
一共需要扩展(n-1)次
kruskal:基于并查集。先将所有边从小到大排序,然后枚举每条边,如果边的两个端点还不联通,则将当前边加入最小生成树。