为什么这两个问题,即TSP和哈密顿路径问题都不是 NP 完全的?
它们看起来相同。
对于一个问题 X 是NP-complete,它必须满足:
旅行商问题 (TSP)有两个版本:
NP-hardness 和 NP-completeness 的定义相关但不同。具体来说,如果 NP 中的每个问题在多项式时间内都归结为该问题,则该问题是 NP-hard;如果问题在 NP 中既是 NP-hard 又是其自身,则该问题是 NP-complete。
NP 类包括决策问题,即有是/否答案的问题。结果,TSP 不能在 NP 中,因为预期的答案是一个数字,而不是是或否。因此,TSP 可以是 NP 难的,但不能是 NP 完全的。
另一方面,哈密顿路径问题要求一个是/否的答案,它恰好在 NP 中。因此,由于它也是 NP 难的,所以它是 NP 完全的。
现在,您可以通过将问题从“最便宜的路径是什么?”更改为 TSP 并将其转换为决策问题。到“是否有一条成本为 X 或更少的路径?”,后一种表述是 NP 的,也恰好是 NP 完全的。