求次小生成树,下面的两篇文章写得很好
http://www.docin.com/p-90421675.html
http://blog.csdn.net/sunbaigui/archive/2009/10/11/4653271.aspx
核心思想:先用prim求出最小生成树,在求最小生成树的过程中,求出连通任意两个节点u,i的路径上的最长边,记录在len[u][i]中,
len[u][pi[u]]=len[pi[u]][u]=cost[pi[u]][u];
for(i=1;i<=n;i++)
if(s[i])
len[i][u]=len[u][i]=mymax(len[i][pi[u]],len[pi[u]][u]);