1 / 16
文档名称:

最佳哈密尔顿圈MATLAB程序.doc

格式:doc   大小:1,347KB   页数:16页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

最佳哈密尔顿圈MATLAB程序.doc

上传人:才艺人生 2022/10/22 文件大小:1.32 MB

下载得到文件列表

最佳哈密尔顿圈MATLAB程序.doc

相关文档

文档介绍

文档介绍:该【最佳哈密尔顿圈MATLAB程序 】是由【才艺人生】上传分享,文档一共【16】页,该文档可以免费在线阅读,需要了解更多关于【最佳哈密尔顿圈MATLAB程序 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。最佳哈密尔顿圈MATLAB程序
M文件
function[circle,long]=modifycircle(c1,L);
globala
flag=1;
whileflag>0
flag=0;
form=1:L-3
forn=m+2:L-1
ifa(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
end
end
long=a(c1(1),c1(L));
fori=1:L-1
long=long+a(c1(i),c1(i+1));
end
circle=c1;
long=
+002
1
a=[
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;

];
globala
L=size(a,1);
c1=[12:1113:1812];
[circle,long]=modifycircle(c1,L);
c2=[1122:1113:18];%改变初始圈,该算法的最后一个顶点不动
[circle2,long2]=modifycircle(c2,L);
iflong2<long
long=long2;
circle=circle2;
end
circle,long
结果
circle=
145678910111516171814133212
long=
+002
globala
L=size(a,1);
c1=[11413324:1115:1812];
[circle,long]=modifycircle(c1,L);
c2=[1141332124:1115:18];%改变初始圈,该算法的最后一个顶点不动
[circle2,long2]=modifycircle(c2,L);
iflong2<long
long=long2;
circle=circle2;
end
circle,long
结果
circle=
145671889101115161714133212
long=
+002
2
a=[
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;

];
globala
L=size(a,1);
c1=[13:182];
[circle,long]=modifycircle(c1,L);
c2=[123:18];%改变初始圈,该算法的最后一个顶点不动
[circle2,long2]=modifycircle(c2,L);
iflong2<long
long=long2;
circle=circle2;
end
circle,long
circle=
1109345678111213**********
long=
+002
globala
L=size(a,1);
c1=[110911:1618173:82];
[circle,long]=modifycircle(c1,L);
c2=[110911:16181723:8];%改变初始圈,该算法的最后一个顶点不动