zoukankan      html  css  js  c++  java
  • 【7.18 灾情巡视路线代码】

    参考论文:https://wenku.baidu.com/view/1ea4660ec1c708a1294a449e.html

    求最短路:

    a=zeros(53);
    a(50,1 )=6.0;a(50,53)=12.9;a(50,38)=11.5;a(50,2)=9.2;a(50,48)=19.8;a(50,51)=10.1;a(1,36)=10.3; a(1,37)=5.9;a(1,38)=11.2;
    a(2,3)=4.8;a(2,5)=8.3;a(3,38)=7.9;a(3,39)=8.2;a(4,39)=12.7;a(4,8)=20.4;a(5,48)=11.4;a(5,39)=11.3;a(5,6)=9.7;
    a(6,48)=9.5;a(6,7)=7.3;a(6,47)=11.8;a(7,39)=15.1;a(7,40)=7.2;a(7,47)=14.5;a(8,40)=8.0;
    a(9,40)=7.8;a(9,41)=5.6;a(10,41)=10.8;a(11,45)=13.2;a(11,40)=14.2;a(11,42)=6.8;
    a(12,42)=7.8;a(12,41)=12.2;a(12,43)=10.2;a(13,44)=16.4;a(13,45)=9.8;a(13,42)=8.6;a(13,14)=8.6;
    a(14,15)=15;a(14,43)=9.9;a(15,44)=8.8;a(16,17)=6.8;a(16,44)=11.8;a(17,22)=6.7;a(17,46)=9.8;
    a(18,46)=9.2;a(18,45)=8.2;a(18,44)=8.2;a(19,20)=93;a(19,47)=7.2;a(19,45)=8.1;
    a(20,21)=7.9;a(20,25)=6.5;a(20,47)=5.5;a(21,23)=9.1;a(21,25)=6.5;a(21,46)=4.1;
    a(22,23)=10.0;a(22,46)=10.1;a(23,24)=8.9;a(23,49)=7.9;a(24,27)=18.8;a(24,49)=13.2;a(25,49)=8.8;a(25,48)=12.0;
    a(26,27)=7.8;a(26,51)=10.5;a(26,49)=10.5;a(27,28)=7.9;a(28,52)=8.3;a(28,51)=12.1;
    a(29,52)=7.2;a(29,53)=7.9;a(29,51)=15.2;a(30,32)=10.3;a(30,52)=7.7;
    a(31,32)=8.1;a(31,33)=7.3; a(31,53)=9.2;a(32,33)=19;a(32,35)=14.9;a(33,36)=7.4;
    a(34,35)=8.2;a(34,36)=11.5;a(34,13)=17.6;a(37,38)=12.2;a(36,53)=8.8;a(37,38)=11.0;a(44,45)=15.8;a(48,49)=14.2;
    a=a+a';
    d=[];
    [b,c]=find(a>0);
    for i=1:length(b)
        d=[d;a(b(i),c(i))];
    end
    DG=sparse(b,c,d);
    UG=tril(DG);
    bg=biograph(UG,[],'ShowArrows','off','ShowWeights','on');
    set(bg.nodes,'shape','circle');
    view(bg)
    [dist,path,pred]=graphshortestpath(DG,1,'directed',false)
    

      求最小生成树:

    clc;clear;
    a=zeros(53);
    a(50,1 )=6.0;a(50,53)=12.9;a(50,38)=11.5;a(50,2)=9.2;a(50,48)=19.8;a(50,51)=10.1;a(1,36)=10.3; a(1,37)=5.9;a(1,38)=11.2;
    a(2,3)=4.8;a(2,5)=8.3;a(3,38)=7.9;a(3,39)=8.2;a(4,39)=12.7;a(4,8)=20.4;a(5,48)=11.4;a(5,39)=11.3;a(5,6)=9.7;
    a(6,48)=9.5;a(6,7)=7.3;a(6,47)=11.8;a(7,39)=15.1;a(7,40)=7.2;a(7,47)=14.5;a(8,40)=8.0;
    a(9,40)=7.8;a(9,41)=5.6;a(10,41)=10.8;a(11,45)=13.2;a(11,40)=14.2;a(11,42)=6.8;
    a(12,42)=7.8;a(12,41)=12.2;a(12,43)=10.2;a(13,44)=16.4;a(13,45)=9.8;a(13,42)=8.6;a(13,14)=8.6;
    a(14,15)=15;a(14,43)=9.9;a(15,44)=8.8;a(16,17)=6.8;a(16,44)=11.8;a(17,22)=6.7;a(17,46)=9.8;
    a(18,46)=9.2;a(18,45)=8.2;a(18,44)=8.2;a(19,20)=93;a(19,47)=7.2;a(19,45)=8.1;
    a(20,21)=7.9;a(20,25)=6.5;a(20,47)=5.5;a(21,23)=9.1;a(21,25)=6.5;a(21,46)=4.1;
    a(22,23)=10.0;a(22,46)=10.1;a(23,24)=8.9;a(23,49)=7.9;a(24,27)=18.8;a(24,49)=13.2;a(25,49)=8.8;a(25,48)=12.0;
    a(26,27)=7.8;a(26,51)=10.5;a(26,49)=10.5;a(27,28)=7.9;a(28,52)=8.3;a(28,51)=12.1;
    a(29,52)=7.2;a(29,53)=7.9;a(29,51)=15.2;a(30,32)=10.3;a(30,52)=7.7;
    a(31,32)=8.1;a(31,33)=7.3; a(31,53)=9.2;a(32,33)=19;a(32,35)=14.9;a(33,36)=7.4;
    a(34,35)=8.2;a(34,36)=11.5;a(34,13)=17.6;a(37,38)=12.2;a(36,53)=8.8;a(37,38)=11.0;a(44,45)=15.8;a(48,49)=14.2;
    a=a+a';
    result=[];p=1;tb=2:length(a);
    while (length(result)~=length(a)-1) % ~=表示不等于
        temp=a(p,tb);temp=temp(:);
        d=min(temp);
        [jb,kb]=find(a(p,tb)==d);
        j=p(jb(1));k=tb(kb(1));
        result=[result,[j;k;d]];
        p=[p,k];
        tb(find(tb==k))=[];
    end
    result;
    

      

  • 相关阅读:
    字符串混淆技术应用 设计一个字符串混淆程序 可混淆.NET程序集中的字符串
    运用Mono.Ceci类库修改.NET程序集 走上破解软件的道路
    字符串反混淆实战 Dotfuscator 4.9 字符串加密技术应对策略
    数学:《初等书论》素数与合数
    数学:《线性代数》矩阵乘积 之 代码实现
    数学:《线性代数》方阵求逆 之 代码实现
    数学:《线性代数》矩阵运算
    数学:《线性代数》矩阵初等行变换及其应用(线性方程求解)
    数学:《概率》条件概率公式
    Entityframework:启用延时加载的主意事项(只为强化记忆)
  • 原文地址:https://www.cnblogs.com/zxhyxiao/p/9332577.html
Copyright © 2011-2022 走看看