1 RAM与 图灵机
1.1 RAM (random access machine)
-
有限数量的算术寄存器
-
无限数量的内存空间
-
指令集包括:
-
从寄存器中读/写
-
寄存器上的算术运算
-
内存地址查询
-
1.2 图灵机可以模拟 RAM
如果一个计算在RAM上需要T(n)步的话,我们可以在图灵机上使用最多步来模拟它
1.2.1 Church-Turing Thesis
每一个算法多可以用图灵机来实现之
2 图灵机的复杂度
2.1时间复杂度
模型: k-tape 确定性图灵机
一个图灵机是T(n) 时间约束的(time bounded),当且仅当 对于每个n,以及每一个有n 尺寸的输入w,M(w)在T(n)步(T次状态转移)后停止
2.2 空间复杂度
模型 “离线”k-tape 图灵机
1) tape 只读
2)一开始的k个读写 tape 是空白的
【类比成考试试卷和答题纸】
一个图灵机是S(n)空间约束的(space bounded),当且仅当对于每个n,以及每个有n尺寸的输入w,M(w)最多需要扫描S(n)个磁带元素
——>不同的磁带扫描的元素数量累加
——>磁带可以来回扫,所以总共需要的空间可能会比S(n)要小
3 复杂性类别
3.1 DTIME
3.2 DSPACE
3.3 性质
3.3.1 线性性质
3.3.2 k tape相关性质
<