• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: Matlab
  • 标签: matlab  prim算法  

资源简介

基于matlab的最小生成树的prim算法,有详细的解释,可直接运行

资源截图

代码片段和文件信息

%形成初始的最小生成树
%生成初始网络节点框架
xx=[1.9761.0560.4801.9280.1963.6400.5242.8760.1841.0080.6643.3600.5480.9163.4242.8562.4883.2722.8763.1122.3482.1283.3003.4402.3041.1722.3882.9443.616];
yy=[1.0901.0261.3041.7981.0760.4740.9141.8081.6021.5861.8220.9040.4300.1821.1920.1820.2721.7381.5601.3940.1120.3340.4741.4901.5560.3540.5061.1960.718];
plot(xxyy‘ko‘)
%对节点进行编号
for i=1:29
    temp=[‘  ‘int2str(i)];%**********************int2str(i)为将整形转换为字符串型;‘  ‘为在数字前加一个空格
    text(xx(i)yy(i)temp)%进行编号***********在图形中指定的位置(xy)上显示字符串temp
end
hold on
%计算所有节点之间的距离
A=zeros(2929)%********************29X29的0矩阵
for i=1:29
    for j=1:29
    A(ij)=sqrt((xx(i)-xx(j))^2+(yy(i)-yy(j))^2)%生成一个29*29的支路长度的对称阵
    end
end
A(A==0)=inf;%把a=0的变成无穷值,为了下面的权值筛选即对角线元素为Inf
result=[];%存放的边即最小生成树的边,形成树矩阵

评论

共有 条评论