码迷,mamicode.com
首页 > 编程语言 > 详细

旅行商算法

时间:2019-07-04 00:13:26      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:bsp   怎么   递归   不同   定义   计算   没有   问题   不同的   

 有一位旅行商,我们暂且称呼他为彪哥。

他需要前往5个城市,所以想要计算出旅程最短的路线。

对于每种路线组合,他都计算出总旅程,再挑选旅程最短的路线。

那么,算法效率的问题来了。

5个城市有120个不同的排列方式,因此需要执行120次操作。

6个城市有720个不同的排列方式,因此需要执行720次操作。

7个城市有5040个不同的排列方式,因此需要执行5040次操作。

20城市有2432902008176640000个不同的排列方式,因此需要执行2432902008176640000次操作。

综上所述,涉及n个城市时,需要执行n!(n的阶乘)次操作才能计算出结果。

阶乘的计算公式: n!=1×2×3×...×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。

对于这个问题,有很多学者认为根本没有更好的算法来代替它。

小伙伴们怎么认为呢?你有更好的算法吗?

旅行商算法

标签:bsp   怎么   递归   不同   定义   计算   没有   问题   不同的   

原文地址:https://www.cnblogs.com/zeussbook/p/11129728.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!