【发布时间】:2014-01-23 13:43:57
【问题描述】:
例如,已知集合覆盖决策问题是一个 NP 完全问题。这个问题的输入是一个全域 U、一个 U 的子集族 S 和一个整数 k()。
我感到困惑的一件事是,如果我们让 k=1,那么显然问题可以通过简单地检查 S 中的每个元素在时间 |S| 中得到解决。更一般地说,当 k 是一个常数时,该问题可以在 |S| 的多项式时间内解决。这样,只有当 k 也随着 |S| 增加时,时间复杂度才会呈指数级增长,例如 |S|/2、|S|/3...
所以这是我的问题:
我目前的理解是,NP 完全问题的时间复杂度测量是根据最坏情况来测量的。谁能告诉我理解是否正确?
我看到有人证明了另一个问题是 NP 难的,他表明输入
<U,S,|U|/3>的集合覆盖决定问题可以简化为该问题。我只是想知道为什么他只证明<U,S,|U|/3>,而不是<U,S,ARBITRARY k>??这样的证明可靠吗?
非常感谢!
【问题讨论】:
-
提供这个人的文章的链接怎么样,这样我们就不用猜测了?设置封面问题的链接和正确定义以及括号符号的解释也很好。
标签: complexity-theory np-complete np np-hard set-cover