prim算法的matlab程序,Prim算法

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

A.Prim算法:

procedure prim(v0:integer);

var

lowcost,closest:array[1..maxn] of integer;

i,j,k,min:integer;

begin

for i:=1 to n do

begin

lowcost:=cost[v0,i];

closest:=v0;

end;

for i:=1 to n-1 do

begin

{寻找离生成树最近的未加入顶点k}

min:=maxlongint;

for j:=1 to n do

if (lowcost[j]< min) and (lowcost[j]< >0) then

begin

min:=lowcost[j];

k:=j;

end;

lowcost[k]:=0; {将顶点k加入生成树}

{生成树中增加一条新的边k到closest[k]}

{修正各点的lowcost和closest值}

for j:=1 to n do

if cost[k,j]< lwocost[j] then

begin

lowcost[j]:=cost[k,j];

closest[j]:=k;

end;

end;

end;{prim}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个使用Prim算法Matlab程序: ```matlab function [result = myprim(a) result = []; p = 1; tb = 2:length(a); while size(result,2)~=length(a)-1 temp = a(p,tb); temp = temp(:); d = min(temp); [jb,kb = find(a(p,tb) == d,1); j = p(jb); k = tb(kb); result = [result,[j;k;d]]; p = [p,k]; tb(find(tb==k)) = []; end ``` 这个程序实现Prim算法来计算最小生成树。输入参数a是一个每个点的距离矩阵。输出结果result是一个3×n的矩阵,其中第一行表示起点,第二行表示终点,第三行表示权值。这个程序使用了一个循环来选择每次迭代中权值最小的边,直到生成完整棵树。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [数模:最小生成树prim算法(通用matlab代码)](https://blog.csdn.net/weixin_45080867/article/details/101290600)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Prim算法matlab实现)](https://blog.csdn.net/weixin_45913125/article/details/115250247)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值