【发布时间】:2021-11-30 19:55:15
【问题描述】:
我很难弄清楚这个问题。
问题是:我们有一个循环无向图G。我们从某个节点开始,然后在整个图中采用循环路径返回起始节点。我们想知道图中是否有一些k 节点列表必须始终用于图中的每条路径。问题差不多了,这些k节点存在吗?
我需要证明这个问题在NP中。但是,不太确定如何执行此操作。
为了证明它在 NP 中,我需要能够验证解决方案。但是,我什至不确定如何从问题本身入手,因为我以前从未见过类似的情况。有人可以提供一些建议吗?有谁知道可以帮助验证的等效问题?
例如,对于起始节点s,我们总是需要遍历b。所以设置k = {b}
输入:无向图 G = (V, E),整数 k。 问题:是否存在一组由 k 个顶点组成的 S,使得图中的每个循环都至少包含一个 S的顶点?
验证者算法不能简单地取一组 k 个节点组成的 S,并枚举图中的每个循环,以检查它是否包含 S 中的至少一个顶点。图中可能有指数级的循环数,而验证者算法需要在多项式时间内运行。它需要比这更聪明。
【问题讨论】:
-
你需要证明它是 NP 到 NP-Complete 吗?
-
那我可能错过了一些东西。给定图表和一组节点 - 如果您将它们从图表中删除,并且它不再是循环的(可由 BFS 验证) - 这些节点对于图表来说确实是必不可少的。
-
@zvonimir 您对“圆形无向图”的定义是什么?是包含圆形路径的图,还是包含哈密顿回路的图?
-
@Berthur 非常感谢您的建议,我认为这是正确的方法。抱歉,我是 NP 概念的新手。 :)
-
@zvonimir Lol,这完全改变了问题。
标签: algorithm complexity-theory graph-theory np