新手提问
matlab中c1=;和c1=;有什么区别啊,具体程序如下:clc,cleara(1,2)=56;a(1,3)=35;a(1,4)=21;a(1,5)=51;a(1,6)=60;a(2,3)=21;a(2,4)=57;a(2,5)=78;a(2,6)=70;a(3,4)=36;a(3,5)=68;a(3,6)=68;a(4,5)=51;a(4,6)=61;a(5,6)=13;a(6,:)=0;a=a+a';c1=;L=length(c1);flag=1;while flag>0 flag=0; for m=1:L-3 for n=m+2:L-1 if a(c1(m),c1(n))+a(c1(m+1),c1(n+1))<a(c1(m),c1(m+1))+a(c1(n),c1(n+1)) flag=1; c1(m+1:n)=c1(n:-1:m+1); end end endendsum1=0;for i=1:L-1 sum1=sum1+a(c1(i),c1(i+1));endcircle=c1;sum=sum1;c1=;%改变初始圈,该算法的最后一个顶点不动flag=1;while flag>0 flag=0; for m=1:L-3 for n=m+2:L-1 if a(c1(m),c1(n))+a(c1(m+1),c1(n+1))<... a(c1(m),c1(m+1))+a(c1(n),c1(n+1)) flag=1; c1(m+1:n)=c1(n:-1:m+1); end end endendsum1=0;for i=1:L-1 sum1=sum1+a(c1(i),c1(i+1));endif sum1<sum sum=sum1; circle=c1;endcircle,sum
1:4就是1 2 3 4的意思,放在向量的中间和放在后面当然产生的向量是不一样的 请问有什么不一样呢? madio 发表于 2013-8-20 09:17 static/image/common/back.gif
1:4就是1 2 3 4的意思,放在向量的中间和放在后面当然产生的向量是不一样的
请问有什么不同呢? c1=;换成c1=6
c1=;换成c1=5
运行的结果是一样的
c1=
c1 =
5 1 2 3 4 6
cl=
cl =
5 6 1 2 3 4
你程序里的这两个位置似乎写的有错误吧(c1= c1=; )
他们的不同就在于 在矩阵c1中的位置排序不同
页:
[1]