赞
踩
1、P问题
P ={ L ∈{0,1}*: 存在一个算法A,可以在多项式时间内判定L}
P也是能在多项式内被接受的语言类
P = {L : L能被一个多项式时间算法所接受}
PATH = {<G, u, v, k>: G = (V,E)是一个无向图,u,v ∈ V, k >= 0是一个整数,即G中从u到v存在一条长度至多为k的路径}
是P问题,可以在多项式时间内被接受
2、NP问题
复杂类NP是能被一个多项式时间算法验证的语言类
区别:P是判定,存在一个多项式算法,NP是判定,即存在一个算法可以在多项式时间内验证一个解是否正确。
3、NP完全(NPC)
一个问题是NPC表示:
1) 它是一个NP问题
2)其他属于NP的问题都可归约成它。
可归约是指对每个问题L,总有一个多项式时间多对一的变换,即一个决定性的算法可以将实例l ∈ L转化成实例c ∈ C.并让c回答yes当且仅当此答案对l也是yes
为了证明某个问题A实际上是NPC问题,必须找出一个已知的NPC问题可以变换成A
NPC问题:
1)布尔公式可满足性
SAT = {<Φ>: Φ是一个可满足的布尔公式}
2)3-CNF :3合取范式
3CNF形式的布尔公式的可满足性问题
3)电路可满足性问题
CIRCUIT-SAT = {<C> : C是一个可满足的布尔组合电路}
4)团问题 是关于寻找图中规模最大的团的最优化问题
CLIQUE = {<G, k> : G是一个包含规模为k的团的图}
5)顶点覆盖问题,顶点覆盖的规模是指它所包含的顶点数
VERTEX-CORVER = {<G, k>: 图G有一个规模为k的顶点覆盖}
6)哈密顿回路问题 哈密顿回路是通过V中每个顶点的简单回路
HAM-CYCLE = {<G>: G是哈密顿图},存在哈密顿回路的图
7)旅行商问题
TSP = {<G, c, k>: G = (V, E)是一个完全图,c是V*V->Z上的一个函数,k ∈ Z, G中包含一个最大花费为k的旅行回路 }
8)子集和问题
SUBSET-SUM = {<S, t>: 存在一个子集S' ∈ S, 使得t = Σs s ∈ S'}
9)子图同构问题: 两个无向图G1, G2,G1是否与G2的一个子图同构
10)背包问题
11)图着色问题
给定一个无向图G=(V, E),其中V为顶点集合,E为边集合,图着色问题即为将V分为K个颜色组,每个组形成一个独立集,即其中没有相邻的顶点。其优化版本是希望获得最小的K值。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。