- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TSP问题的解决方案教程
《算法设计与分析》实验报告一
学 号: 姓 名: 日 期: 得 分:
一、实验内容:
TSP问题
二、所用算法的基本思想及复杂度分析:
蛮力法
基本思想
借助矩阵把问题转换为矩阵中点的求解。首先构造距离矩阵,任意节点到自身节点的距离为无穷大。在第一行找到最小项a[1][j],从而跳转到第j行,再找到最小值a[j][k],再到第k行进行查找。。。然后构造各行允许数组row[n]={1,1…1},各列允许数组colable[n]={0,1,1….1},其中1表示允许访问,即该节点未被访问;0表示不允许访问,即该节点已经被访问。如果改行或该列不允许访问,跳过该点访问下一节点。程序再发问最后一个节点前,所访问的行中至少有1个允许访问的节点,依次访问这些节点找到最小的即可;在访问最后一个节点后,再次访问,会返回k=0,即实现访问源节点,得出一条简单回路。
复杂度分析
基本语句是访问下一个行列中最小的点,主要操作是求平方,假设有n个点,则计算的次数为n^2-n。T(n)=n*(n-1)=O(n^2)。
动态规划法
基本思想
假设从顶点s出发,令d(i, V’)表示从顶点i出发经过V’(是一个点的集合)中各个顶点一次且仅一次,最后回到出发点s的最短路径长度。
??????? 推导:(分情况来讨论)
当V’为空集,那么d(i, V’),表示从i不经过任何点就回到s了,如上图的 城市3-城市0(0为起点城市)。此时d(i, V’)=Cis(就是 城市i 到 城市s 的距离)、
如果V’不为空,那么就是对子问题的最优求解。你必须在V’这个城市集合中,尝试每一个,并求出最优解。
?????????? d(i, V’)=min{Cik +? d(k, V’-{k})}
?????????? 注:Cik表示你选择的城市和城市i的距离,d(k, V’-{k})是一个子问题。
??????? 综上所述,TSP问题的动态规划方程就出来了:
?????????
int main()
{
int i,j,s=0;
int **a;
printf(输入节点个数:\n);
scanf(%d,n);
printf(输入%d维对称矩阵:\n,n);
colable=(int*)malloc((sizeof(int))*n);
colable[0]=0;
//对各列允许矩阵进行赋值
for(i=1;in;i++)
{
colable[i]=1;
}
row=(int *)malloc((sizeof(int))*n);
for(i=0;in;i++)
{
row[i]=1;
}
a=(int **)malloc((sizeof(int*))*n);
for(i=0;in;i++)
{
a[i]=(int *)malloc((sizeof(int*))*n);
}
for(i=0;in;i++)
{
for(j=0;jn;j++)
{
scanf(%d,a[i][j])
}
}
i=0;
while(row[i]==1)
{
j=min(a[i]);
row[i]=0;
colable[j]=0;
printf(访问路径:\n);
printf(\t%d--%d\n,i,j);
s=s+a[i][j];
i=j;
}
printf(最短总距离为:%d\n,s);
}
int min(int *a)
{
int j=0,m=a[0],k=0;
while(colable[j]==0||row[j]==0)
{
j++;
m=a[j];
}//求最短距离
for(;jn;j++)
{
if(colable[j]==1row[j]==1)//节点没有被访问
{
if(m=a[j])
{
m=a[j];//m始终保持最短距离
k=j;
您可能关注的文档
- TOGAF讲解教程.pptx
- Tomcat配置数据源(JNDI方式)教程.docx
- TraintheTrainer教程.pptx
- TRT隧道超前地质预报报告教程.doc
- TRS数据比较(站级)教程.pptx
- TS16949-2009_过程_OK教程.doc
- TS16949-2009标准条款讲解教程.ppt
- TOGAF企业架构培训认证教程.ppt
- TS16949-2009简单基础知识培训教程.pptx
- TS16949学习笔记教程.docx
- 2025年福建省《人文科技常识》必刷100题试卷带解析必背【各地真题】.docx
- 2025年浙江省公务员考试《人文科技常识》必刷100题试卷带解析含完整答案【夺冠系列】.docx
- 中考生物总复习(解析版)七年级下册 第三单元 在集体中成长.2024年中考道德与法治一轮复习讲练测x.pdf
- [广告渠道营销]中国传媒大学某某某硕士生招计划.pdf
- 旅游行业旅游市场营销第四版英文版课本生词.pdf
- 中考生物总复习(解析版)2024年中考道德与法治一轮复习讲练测八年级下册 第四单元 崇尚法治精神x.pdf
- 髋部软组织扭挫伤讲课PPT.pptx
- 髋与大腿部筋伤-弹响髋.pptx
- 生物柴油行业深度系列(一):出口困境尾声,内需空间广阔.pptx
- Fastdata极数-全球AR&VR行业发展趋势报告2025.pdf
文档评论(0)