Algorithm 最小顶点覆盖的验证算法?

Algorithm 最小顶点覆盖的验证算法?,algorithm,graph,vertex,np-complete,Algorithm,Graph,Vertex,Np Complete,我们知道最小顶点覆盖是NP完全的,这意味着它在一组问题中可以在多项式时间内得到验证 据我所知,核查过程需要以下方面: 验证解决方案是否为顶点覆盖 验证解决方案是满足条件#1的源图的最小可能子集 我发现很难确定第2步可以在多项式时间内完成。有人能解释一下它是怎么回事吗?最小顶点覆盖是NP难的。如果它是NP完全的,并且可以在多项式时间内得到验证,则它是NP完全的 最小顶点覆盖问题是在给定图中寻找最小顶点覆盖的优化问题 实例:图G 输出:最小数k,使得G的顶点覆盖大小为k 如果问题表示为a,则称为

我们知道最小顶点覆盖是NP完全的,这意味着它在一组问题中可以在多项式时间内得到验证

据我所知,核查过程需要以下方面:

  • 验证解决方案是否为顶点覆盖
  • 验证解决方案是满足条件#1的源图的最小可能子集

  • 我发现很难确定第2步可以在多项式时间内完成。有人能解释一下它是怎么回事吗?

    最小顶点覆盖是NP难的。如果它是NP完全的,并且可以在多项式时间内得到验证,则它是NP完全的

    最小顶点覆盖问题是在给定图中寻找最小顶点覆盖的优化问题

    • 实例:图G
    • 输出:最小数k,使得G的顶点覆盖大小为k
    如果问题表示为a,则称为顶点覆盖问题:

    • 实例:图G和正整数k
    • 问题:G的顶点覆盖最大为k吗
    将问题重新定义为决策问题是使问题NP完全的常见方法。基本上,你把一个形式为“找到最小解k”的开放式问题变成了一个是/否的问题,“对于给定的k,有解存在吗?”

    例如,对于,验证所有城市之间的最短路径的建议解决方案是NP困难的。但是,如果问题被重述为只需要为某些k找到一个小于k总距离的解,那么验证一个解就很容易了。您只需找到建议解决方案的长度,并检查它是否小于k


    决策问题公式可以很容易地用于求解一般公式。要找到最短路径,您所要做的就是逐步降低k的值,直到找不到解。

    但如果某件事很简单,并不意味着它太快了,可以解决吗?Np问题需要很长时间,这就是问题所在。@Phpdna在寻找解决方案(即Np)和验证解决方案(即P)之间有一个关键区别。Np完全问题是一个可以“轻松”(在多项式时间内)验证解决方案的问题。我不知道如何找到在500英里内击中五个城市的方法,但如果有人给我一个解决方案,我可以很容易地检查他们的路线是否短于500英里。但它仍然没有说明解决方案。关于发现(决策)问题的事情真的有那么难理解吗?毕竟它甚至不是一门真正的科学?