• 大小: 0.70KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: 其他
  • 标签: 其他  

资源简介


回溯法求解TSP问题,回溯法的基本做法是搜索,或是一种组织得井井有条的,能避免不必要搜索的穷举式搜索法。这种方法适用于解一些组合数相当大的问题。

资源截图

代码片段和文件信息

#include 
using namespace std;

class Traveling {
friend int TSP(int **int[]intint);
private:
void Backtrack(int i);
int n
*x
*bestx;
int **a
cc
bestc
NoEdge;
};

void Swap(int &aint &b)
{
int temp=a;a=b;b=temp;
}

void Traveling::Backtrack(int i)
{
if(i==n)
{
if(a[x[n-1]][x[n]]!=NoEdge&&a[x[n]][1]!=NoEdge&&
(cc+a[x[n-1]][x[n]]+a[x[n]][1]<=bestc||bestc==NoEdge))
{
for(int j=1;j<=n;j++)
bestx[j]=x[j];
for(j=1;j<=n;j++)
{
cout< }
cout< bestc=cc+a[x[n-1]][x[n]]+a[x[n]][1];
}
}
else{
for(int j=i;j<=n;j++)
if(a[x[i-1]][x[j]]!=NoEdge&&
(cc+a[x[i-1]][x[j]] {
Swap(x[i]x[j]);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1528  2008-11-18 09:12  tsp.cpp

----------- ---------  ---------- -----  ----

                 1528                    1


评论

共有 条评论