文档介绍:---------------------------------作者:_____________-----------------------------日期::_____________最佳哈密尔顿圈MATLAB程序M文件function[circle,long]=modifycircle(c1,L);globalaflag=1;whileflag>0flag=0;form=1:L-3forn=m+2:L-1ifa(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);endendendendlong=a(c1(1),c1(L));fori=1:L-1long=long+a(c1(i),c1(i+1));endcircle=c1;命令窗口全程的:globalaL=size(a,1);c1=[12:1820:5319];[circle,long]=modifycircle(c1,L);c2=[1192:1820:53];%改变初始圈,该算法的最后一个顶点不动[circle2,long2]=modifycircle(c2,L);iflong2<longlong=long2;circle=circle2;endcircle,longcircle=Columns1through191164445464717485049515352342152226Columns20through386251337383936101131829272873093233Columns39through5334351240414215431424232018219long=+0021a=[;;;;;;