题目出自《算法概论》的第八章8.22
问题描述:
Given a directed graph G=(V,E) , a subset E ′ ∈E is called a feedback arc set if the removal of edges E ′ renders G acyclic.
FEEDBACK ARC SET(FAS): Given a directed graph
FAS can be shown to be NP-complete by a reduction from VERTEX COVER.
(a) Show that FAS is in NP.
(b) Show that if G contains a vertex cover of size
(c) Show that if
- (w i ,w i ′ ) for all 1,2,...,n .
- (w i ,w j ′ ) and (w j ,w i ′ ) for every (v i ,v j )∈E .
值得注意的是, G 为无向图,G ′ 为有向图。
问题解析:
(a) 问题a需要证明FAS是一个NP问题。首先介绍一下P问题,NP问题,以及NP完全问题(NPC, NP - Complete).
- P问题(Polynomial Problem)即可以在多项式时间内解决的问题。
- NP问题(Non-deterministic Polynomial Problem), 即不确定是否能在多项式时间内解决,但可以在多项式时间内验证一个解的问题。
- NPC问题:如果所有的NP问题能够在多项式时间内规约为某个NP问题,那么这个NP问题被称为NPC问题。
我们不确定FAS问题是否能在多项式时间内得到一个解,需要证明在多项式时间内验证一个解 E ′ 是否是FAS的解。
有如下验证:
- 判断 |E ′ |<=b
- 判断对于有向图