蠻力演算法
通過每個頂點一次的路徑與以某種方式排序頂點相同。因此,為了計算通過每個頂點一次的最小成本,我們可以對從 1
到 N
的數字的 N!
排列中的每一個進行暴力破解。
偽碼
minimum = INF
for all permutations P
current = 0
for i from 0 to N-2
current = current + cost[P[i]][P[i+1]] <- Add the cost of going from 1 vertex to the next
current = current + cost[P[N-1]][P[0]] <- Add the cost of going from last vertex to the first
if current < minimum <- Update minimum if necessary
minimum = current
output minimum
時間複雜性
有 N!
排列通過,每個路徑的成本在 O(N)
中計算,因此這個演算法需要時間 6 來輸出確切的答案。