Algorithm 1: Rooted Minimum Spanning Tree |
input :
= v[N], λ′, D = d[N][N], nr//index of root |
|
output : Pre [N]/*The index of the parent node of v[n], equivalent to ℰ |
*/ |
begin |
|
/*For simplicity, set ri = 1 in (8)
|
*/ |
/*Vertex in tree |
*/ |
= {v[nr]}; |
|
for v[n] ∈
–
do
|
|
/*distance from the tree |
*/ |
dtree[n] = d[nr] [n]; |
|
/*distance from the root |
*/ |
droot [n] =
d[nr] [n]; |
|
Pre[n] = nr; |
|
while
≠
do
|
|
m = minv[n]∈
–
droot[n]; |
|
=
∪ v[m]; |
|
droot [m] = droot[Pre[m]] +
dtree [m]; |
|
for v[n] ∈
–
do
|
|
if droot[n] > d[m] [n] + droot[m] then
|
|
dtree [n] = d[m] [n]; |
|
droot [n] = d[m][n] + droot[m]; |
|
Pre[n] = m; |
|
end |
|