永发信息网

哪位大神有蜂群算法求解tsp问题的代码啊?(c语言)

答案:1  悬赏:0  手机版
解决时间 2021-11-29 18:46
哪位大神有蜂群算法求解tsp问题的代码啊?(c语言)
最佳答案
您好,有,来了:
#include "stdio.h"
#include "math.h"
void main()
{
long x[21]={0},y[21]={0},d[191]={0},e[191]={0},g[41]={0},s[42]={0};
int i,j,h=1,k,l,o,m,n=0,p,q=3,r=0;
int flag;
double a[21]={0},b[21][21]={0},c[21][21]={0},f[191]={0};
char ch;

printf(" C-W算法求解TSP问题 \n\n\n");
printf("请输入坐标(20个以内),坐标之间用空格隔开,按回车键结束输入:\n");

re:scanf("%d,%d",&x[h],&y[h]);
ch=getchar();
if(ch!='\n')
{ h++;
goto re;
}

for(i=1;i a[i]=sqrt(x[i]*x[i]+y[i]*y[i]);

for(i=1;i {
for(j=i+1;j { n++;
b[i][j]=sqrt((x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j]));
c[i][j]=a[i]+a[j]-b[i][j];
d[n]=i;
e[n]=j;
f[n]=c[i][j];
}
}

for(i=1;i { flag=0;
for(j=1;j if(f[j]>f[j+1])
{ k=f[j];f[j]=f[j+1];f[j+1]=k;
l=d[j];d[j]=d[j+1];d[j+1]=l;
o=e[j];e[j]=e[j+1];e[j+1]=o;
flag=1;
}
if(flag==0)
break;
}

printf("\n");
printf("节约值排序:\n");
for(i=n;i>0;i--)
{ if(f[i]!=0)
printf("%lf(%ld,%ld)--(%ld,%ld)\n",f[i],x[d[i]],y[d[i]],x[e[i]],y[e[i]]);
}

g[1]=d[n];
g[2]=e[n];

for(m=1;m {
for(j=n-1;j>0;j--)
{ p=0;
for(i=1;i<41;i++)
{
if(d[j]==g[i])
p=p+1;
if(e[j]==g[i])
p=p+1;
}
if(p==1)
{ g[q]=d[j];
g[q+1]=e[j];
}
if(p==1)
break;
}
q=q+2;
}

printf("\n选出连接点:\n");
for(i=1;i<41;i=i+2)
{ if(g[i]!=0)
{
printf("(%ld,%ld)--(%ld,%ld)\n",x[g[i]],y[g[i]],x[g[i+1]],y[g[i+1]]);
r=r+2;
}
}

s[21]=g[1];
s[22]=g[2];

for(i=3;i for(j=1;j<42;j++)
{
if(g[i]==s[j])
{
if(s[j-1]==0)
s[j-1]=g[i+1];
else
s[j+1]=g[i+1];
break;
}

if(g[i+1]==s[j])
{
if(s[j-1]==0)
s[j-1]=g[i];
else
s[j+1]=g[i];
break;
}
}

printf("\n旅行商路线:\n");
printf("(0,0)--");
for(i=1;i<42;i++)
{
if(s[i]!=0)
printf("(%ld,%ld)--",x[s[i]],y[s[i]]);
}
printf("(0,0)");
getch();
}追问额,是蜂群算法……
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
要想打新股.先下栽什么软件
有在做米客兼职的吗
用章光101能生发吗
老花匠告诉你:水培的几种花你家里养了哪几种
求晓松奇谈百度云,不要压缩的,我会快快存
150斤瘦十斤有什么改变?
沈阳市大型超市有招聘推购物车的吗
我想去掉下面图中显示的SD/mmc(J:)的图标
问题是我会比65 14()80怎样做
魔兽世界5.2毁灭术士找不到火焰之雨
男朋友说先分开一段时间,想清楚了再说是要分
幽默乐观的男生会喜欢什么样的女生啊
谁有宋勉抽烟照片?
IRY新肌修护乳液美白淡斑效果如何?
无框阳台窗安装
推荐资讯
求百合GL甜文!强攻弱受,强强也行,反正要宠
焖烧杯哪个牌子好?焖烧杯品牌排行
如何取得住房公积金金龙卡
山高自有人行路海阔不乏破浪舟
带有 乏力的成语
GTA5重新抢劫联合储蓄还能得到钱吗?应该能吧
有人代理万家伴吗?怎么样
单选题________thebadnews,shecouldn'th
这个体系以木材结构为它的主要结构方法。这就
2.2*1.7*0.88胎囊是什么形状的
从南昌开车到南矶山怎么走?
384除以37的竖式怎么计算
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?