请教一道图论题目3

timidduck 2000-08-23 01:23:00
清华大学出的一本书上求克鲁斯卡尔的算法为:

type edgenode=record
fromvex,endvex:1..n;
weight:integer;
edgeset=array[1..n] of edgenode
Procedure kruskal(ge:edgeset;var c:edgeset);
var s:set of 1..n;
i,j,k,m1,m2:integer;
begin
for i:=1 to n do s[i]:=[i];
i:=1;j:=1;
while (i<=n-1)do
begin
for k:=1 to n do
if (ge[j].fromvex in s[k]) then m1:=k;
if (ge[j].endvex in s[k]) then m2:=k;
if (m1<>m2) then
c[i]:=ge[j];
i:=i+1;
s[m1]:s[m1]+s[m2];
s[m2]:=[ ];
end;
j:=j+1;
end


总感觉这个程序不对,按照克鲁斯的算法是从最小权开始,可这个程序没有比较,我的看法对吗?如果对,正确的算法是什么?
...全文
225 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fleg 2000-11-30
  • 打赏
  • 举报
回复
说清楚问题的所在。
qiaoyu2k 2000-11-26
  • 打赏
  • 举报
回复
要先搞清, 原有数据结构的定义.
whitehare 2000-09-11
  • 打赏
  • 举报
回复
克鲁斯的算法?&?@
starmoon 2000-09-08
  • 打赏
  • 举报
回复
你的看法部队
shshsh_0510 2000-09-08
  • 打赏
  • 举报
回复
克鲁斯是什麽?
iamxia 2000-09-02
  • 打赏
  • 举报
回复
你能具体说说克鲁斯的算法的定义吗?

33,006

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧