動態規劃解決TSP問題

2021-09-03 03:09:55 字數 675 閱讀 1479

題目描述

某推銷員要從城市 v1 出發,訪問其它城市v2,v3,…,v6 各一次且僅一次,最後返回v1。d為各城市間的距離矩陣。

問:該推銷員應如何選擇路線,才能使總的行程最短?

int d[node_number][node_number] = //每個點之間距離的矩陣

;int path[6][6]; // 行表示走到第幾步,列表是當前在哪乙個點,它的值表示下乙個走哪

int cost[6][6] = ; // 記錄path每乙個資料的當前最優值,先初始化乙個很大的值

int tsp(int step,int node ,int s)

for (int i = 1; i <=16 ; i *= 2)

} next_node++;

} if (min < cost[step][node])

return min;

}int main()

printf("1 \n");

system("pause");

}

TSP問題 動態規劃實現

貨郎擔問題 tsp 有n個城市,兩兩之間均有路直接連線,求一條經過每個城市一次且僅一次,最後返回起點的最短路線。這是劉汝佳書上的一道題,他給出了思路,我實現了一下。用動態規劃解決,可以假設從0點出發,然後回到0點。那麼用 f i,s 表示現在處在i點,要去訪問剩餘的在集合s中的點,集合s可以用二進位...

TSP問題,動態規劃法

tsp問題是指旅行家要旅行n個城市,要求各個城市經歷且僅經歷一次然後回到出發城市,並要求所走的路程最短。各個城市間的距離可以用代價矩陣來表示。假設從頂點i出發,令d i,v 表示從頂點i出發經過v 中各個頂點一次且僅一次,最後回到出發點i的最短路徑長度,開始時,v v 於是,tsp問題的動態規劃函式...

TSP問題(利用動態規劃法)

tsp問題是指旅行家要旅行n個城市,要求各個城市經歷且僅經歷一次然後回到出發城市,並要求所走的路線圖最短。無窮3 675無窮 2364 無窮267 5無窮待補充 define crt secure no warnings include include using namespace std str...