文章目录

  • 一、确定性模型的计算复杂性关系
  • 二、证明 "多个带子图灵机时间复杂度是 O(n2)\rm O(n^2)O(n2)"

一、确定性模型的计算复杂性关系


计算的 复杂性 取决于 模型的计算 ;

给定一个函数 t(n)\rm t(n)t(n) , 假设有一个 两个带子图灵机 时间复杂度是 O(t(n))\rm O(t(n))O(t(n)) , 那么对应的有相同计算能力的 一个带子图灵机 时间复杂度是 O(t2(n))\rm O(t^2(n))O(t2(n)) ;

示例 : 参考上一篇博客 【计算理论】计算复杂性 ( 两个带子的图灵机的时间复杂度 ) , 识别语言 A={0k1k:k≥0}\rm A = \{ 0^k1^k : k \geq 0 \}A={0k1k:k≥0} , 一个带子图灵机识别上述语言的 计算时间复杂度是 O(n2)\rm O(n^2)O(n2) , 两个带子图灵机识别上述语言的 计算时间复杂度是 O(n)\rm O(n)O(n) ;

二、证明 "多个带子图灵机时间复杂度是 O(n2)\rm O(n^2)O(n2)"


参考 【计算理论】图灵机 ( 多个带子的图灵机 | 计算能力对比 | 证明过程 | 一个带子图灵机 ) 博客 , 以如下三个带子的图灵机为例 , 加入下面的 三个带子图灵机的时间复杂度是 t(n)\rm t(n)t(n) ;

使用 单个带子图灵机 模仿上述 三个带子图灵机 , 那么对应的单个带子图灵机的时间复杂度是 t2(n)\rm t^2(n)t2(n) ;

计算 单个单子图灵机 模仿 三个带子图灵机 一步的计算 , 需要花费的步数 ;

模仿的核心是将三个带子的字符串放在一个带子中 , 使用 “#” 分割 , 并使用红色记录三个带子对应的位置 , 一个读头需要记录三个位置 , 如下图 :

使用 111 个带子的图灵机 模拟 333 个带子的图灵机 的代价是 读写头必须从左向右整个遍历一遍带子 , 才能模拟 333 个带子的图灵机 一步的计算 ;

最坏的情况下就是 , 三个带子图灵机走 111 步 , 单个带子图灵机走 三个带子所有字符串的内容长度 对应的步数 , 也就是 10+410 + 410+4 步 , 多出来的 444 步是 444 个 “#” 分割字符 ;

三个带子图灵机 每个带子的长度是 t(n)\rm t(n)t(n) , 单个带子图灵机 带子长度是 3t(n)\rm 3t(n)3t(n) ;

单个带子图灵机 模仿 三个带子图灵机 一步操作 , 最坏的情况下 , 需要执行的步数是 3t(n)\rm 3t(n)3t(n) ;

总共需要模仿 t(n)\rm t(n)t(n) 步 , 因此总共需要模仿的步数是 3t2(n)\rm 3t^2(n)3t2(n) ;

如果是 四个带子图灵机 , 总共需要模仿的步数是 4t2(n)\rm 4t^2(n)4t2(n) ,

如果是 五个带子图灵机 , 总共需要模仿的步数是 5t2(n)\rm 5t^2(n)5t2(n) ,

如果是 一百个带子图灵机 , 总共需要模仿的步数是 100t2(n)\rm 100t^2(n)100t2(n) ,

其数量级还是 t2(n)\rm t^2(n)t2(n) ,

因此增加到 222 个带子 , 与 增加到 100100100 个带子 , 甚至 一亿个带子 , 算法复杂度的数量级是 O(n2)\rm O(n^2)O(n2) , 这是不变的 ;

单个带子模仿多个带子图灵机 , 所花费的时间是平方增加 , 不管多个带子的个数是多少 ;

【计算理论】计算复杂性 ( 两个带子的图灵机的时间复杂度 | 证明多个带子图灵机时间复杂度 )相关推荐

  1. 【计算理论】计算复杂性 ( 两个带子的图灵机的时间复杂度 )

    文章目录 一.两个带子的图灵机的时间复杂度 一.两个带子的图灵机的时间复杂度 讨论两个带子的图灵机的时间复杂度 ; 计算问题如下 : 给定语言 : A={0k1k:k≥0}\rm A = \{ 0^k ...

  2. 【计算理论】计算复杂性 ( 证明 非确定性图灵机 与 确定性图灵机 的时间复杂度 之间的指数关系 )

    文章目录 证明 非确定性图灵机 与 确定性图灵机 的时间复杂度 之间的指数关系 证明 非确定性图灵机 与 确定性图灵机 的时间复杂度 之间的指数关系 在上一篇博客 [计算理论]计算复杂性 ( 非确定性 ...

  3. 【计算理论】计算复杂性 ( 非确定性图灵机的时间复杂度 | 非确定性图灵机 与 确定性图灵机 的时间复杂度 之间的关系 )

    文章目录 一.非确定性图灵机的时间复杂度 二.非确定性图灵机 与 确定性图灵机 的时间复杂度 之间的指数关系 一.非确定性图灵机的时间复杂度 给定一个非确定性图灵机 , 该图灵机是 判定机 , 在所有 ...

  4. 【计算理论】图灵机 ( 多个带子的图灵机 | 计算能力对比 | 证明过程 | 一个带子图灵机 )

    文章目录 一.多个带子的图灵机 二.证明过程设计 三.模仿操作 四.模仿带子排列 五.模仿读写头操作 一.多个带子的图灵机 多个带子的图灵机 指的是 图灵机不止一个带子 , 下图是 333 个带子的图 ...

  5. 【计算理论】计算复杂性 ( NP 类不同表述 | 团问题 | P 对 NP 问题 )

    文章目录 一.NP 类不同表述 二.团问题 三.P 对 NP 问题 ( P vs NP ) 一.NP 类不同表述 NP\rm NPNP 对应的 确定性图灵机 表述 : NP\rm NPNP 类就是有 ...

  6. 【计算理论】计算复杂性 ( P 类 | 有效算法函数 | NP 直觉 | NP 简介 | NP 类严格数学定义 )

    文章目录 一.P 类 二.有效算法函数 三.NP 直觉 四.NP 简介 五.NP 严格数学定义 一.P 类 时间复杂度类 : 定义 时间复杂度类 TIME(t(n))\rm TIME( t(n) )T ...

  7. 【计算理论】计算复杂性 ( 多项式等价 | P 类 | 丘奇-图灵论题延伸 )

    文章目录 一.多项式等价 二.P 类 三.丘奇-图灵论题延伸 一.多项式等价 多项式等价 : 所有的 确定性的计算模型 之间是 相互等价 的 , 两个带子图灵机 与 单个带子图灵机 , 计算相同的问题 ...

  8. 【计算理论】计算复杂性 ( 时间复杂度时间单位 : 步数 | 算法分析 | 算法复杂性分析 )

    文章目录 一.时间复杂度时间单位 二.算法分析 三.算法复杂性分析 一.时间复杂度时间单位 图灵机计算时间 是根据 步数 进行定义的 , 图灵机走 111 步 , 时间加一 , 每一步的时间可能不一致 ...

  9. 【计算理论】计算复杂性 ( 计算理论内容概览 | 计算问题的有效性 | 时间复杂性度量 | 输入表示 | 时间复杂度 )

    文章目录 一.计算理论内容概览 二.计算问题的判定性 三.计算问题的 有效性 四.时间复杂性度量 五.算法有效性 数学定义需求 六.输入表示 七.时间复杂度 一.计算理论内容概览 计算理论分为 形式语 ...

最新文章

  1. 使用Qt Installer Framework制作软件安装包
  2. android 官方DrawerLayout的介绍和使用
  3. volatile、synchronized、(原子、可见、有序)、先行发生原则
  4. 【机器视觉】 until算子
  5. SQL Server 2005 智能感知插件 - SQL Prompt 3.8.0.224
  6. javascript 函数和对象 再顺一顺
  7. [luoguP1029] 最大公约数和最小公倍数问题(数论)
  8. 怎么建立微信生态用户增长模型?
  9. Redis事务回滚深入
  10. 将任意图像转成 HTML5 Canvas
  11. Matplotlib 中文用户指南 2 安装
  12. python rest api 框架_Python Eve REST API框架
  13. Linux安装Python3详解
  14. 【数码管识别】需要改进的地方
  15. “智能语音助手”的竞品分析 —— 你好小悟小爱同学(4)
  16. 关于数据库的练习题,关系代数
  17. 【004】VS2017配置OpenCV4.1.0
  18. 如何测试app启动时间?
  19. 7-13 寻找大富翁 (25 分)
  20. 什么叫工业4.0,这篇接地气的文章终于讲懂了

热门文章

  1. silverlight 客户端之间的通讯
  2. 逆序对(树状数组解决)
  3. python常用模块之shelve模块
  4. linux下使用DBCA(database configuration assistant)创建oracle数据库
  5. spring Transaction Propagation 事务传播
  6. jQueryui autocomplete使用示例
  7. C++--在单文档的应用程序增加多个视图
  8. ibatis 的 This SQL map does not contain a MappedStatement的错误
  9. Java中Properties类的操作
  10. 互联网开发(一) 并发基础知识