复杂度类

本页使用了标题或全文手工转换
维基百科,自由的百科全书

计算复杂度理论中,一个复杂度类指的是一群复杂度类似的问题的集合。一个典型的复杂度类的定义有以下形式:

可以被同一个抽象机器M使用O(f(n))的资源R所解决的问题的集合(n是输入资料的大小)。

例如NP类别就是一群可以被一非确定型图灵机多项式时间解决的决定型问题。而P类别则是一群可以被确定型图灵机多项式时间解决的决定型问题。某些复杂度类是一群函数问题的集合,例如FP (复杂度)英语FP (complexity)

许多复杂度类可为数学逻辑所描述刻划,请见描述性复杂度英语descriptive complexity

布卢姆复杂度则不需实际抽象机器就可定义复杂度类。

复杂度类之间的关系

下表简列了一些属于复杂度理论的问题(或语言、文法等)类别。如果类别X是类别Y子集合,则X将会画在Y底下,并以一黑线相连。如果X是子集合,但不知是否与Y相等,则以较轻的虚线相连。实际上可解与不可解问题更属于可计算性理论,但是它有助于更透彻了解复杂度类的问题。

决定性问题
类型0(递归可枚举)
未决定问题
递归
EXPSPACE
NEXPTIME
EXPTIME
PSPACE
类型1(上下文有关)
反NP
BQP
NP
BPP
P
NC
类型2(上下文无关)
类型3(正则)

扩展阅读

参见