0%

3-NP问题

算法效率

1.多项式时间复杂度(O(n)、O(nlogn)、O($n^2$)、O($n^{10}$))

2.非多项式时间复杂度(O($n^{logn}$)、O($2^n$)、O($n!$))

P问题定义

多项式时间内可以解决的问题

NP问题定义

就是对于一个给定的解,能够在多项式时间内验证其是否正确的问题

所有的P问题都是NP问题

NPC问题(NP完全问题)定义

需满足两个条件

1.是一个NP问题

2.所有NP问题都可以归约成此问题

img

规约

img
img

P问题的证明

2CNF-SAT(2合取范式的可满足问题)

是否存在一个赋值使得2CNF为真

NPC问题的证明

电路可满足问题(第一个NPC问题)

给定一个逻辑电路,是否存在一种输入使得输出为True

公式可满足性问题

1.它是一个NP问题,可以在多项式时间判断解是否正确

2.电路可满足问题可以 规约 到公式可满足问题

3CNF-SAT问题(3合取范式的可满足问题)

1.它是一个NP问题,可以在多项式时间判断解是否正确

2.公式可满足问题可以 规约 到3CNF-SAT问题

团问题

团问题是关于寻找图中规模最大的团的最优化问题

我们仅仅要考虑的是:在图中是否存在一个给定规模为k的团

1.它是一个NP问题,可以在多项式时间判断解是否正确

给定义一个图G的顶点集,可以在多项式时间判断它是否是团

2.3CNF-SAT问题可以 规约 到团问题
img
输出一致性:

若3CNF-SAT有真,则必然所有子句都为真,则子句内有真,真值之间都是互联的,所以有团

顶点覆盖问题

找出最小数目的顶点集合S,使得G中的每条边都至少被集合S中的一个顶点覆盖

1.它是一个NP问题,可以在多项式时间判断解是否正确

2.团问题可以 规约 为顶点覆盖问题

原图和补图
img
img
img
img

哈密顿回路问题

在一个图(通常指无向图)中,从某个顶点出发,经过其它顶点一次且仅一次的回路称作哈密顿回路。将这个问题转为一个判断性问题“给定一个图,判断它是否包含哈密顿回路”

1.它是一个NP问题,可以在多项式时间判断解是否正确

2.顶点覆盖问题可以 规约 为哈密顿回路问题

转化后的图中有顶点数:12m + k

转化后的图中有边数:14m + 2m - n + 2kn
img
img