[Delphi (Object Pascal)] pascal经典算法 - 最小生成树Prim算法 →→→→→进入此内容的聊天室

来自 , 2020-09-09, 写在 Delphi (Object Pascal), 查看 135 次.
URL http://www.code666.cn/view/64de1666
  1. procedure prim(v0: Integer);
  2. var
  3.   lowcost, closest: array[1..maxn] of Integer;
  4.   i, j, k, Min: Integer;
  5. begin
  6.   for i := 1 to n do
  7.   begin
  8.     lowcost[i] := cost[v0, i];
  9.     closest[i] := v0;
  10.   end;
  11.   for i := 1 to n - 1 do
  12.   begin
  13.     {寻找离生成树最近的未加入顶点k}
  14.     Min := MaxLongint;
  15.     for j := 1 to n do
  16.       if (lowcost[j] < Min) and (lowcost[j] <> 0) then
  17.       begin
  18.         Min := lowcost[j];
  19.         k := j;
  20.       end;
  21.     lowcost[k] := 0; {将顶点k加入生成树}
  22.     {生成树中增加一条新的边k到closest[k]}
  23.     {修正各点的lowcost和closest值}
  24.     for j := 1 to n do
  25.       if cost[k, j] < lwocost[j] then
  26.       begin
  27.         lowcost[j] := cost[k, j];
  28.         closest[j] := k;
  29.       end;
  30.   end;
  31. end;
  32. //delphi/6604

回复 "pascal经典算法 - 最小生成树Prim算法"

这儿你可以回复上面这条便签

captcha