今天偶然间碰到数学界著名的七大千禧难题,关注了P和NP问题,但是里面提到关于算法的复杂性的描述已经超出了自己的知识范围,我找到了一本书来弥补这个不足,即《计算复杂性与算法分析》,希望自己在看完这本书之后能够对计算复杂性有完整的概念

首先看看它的目录

其实大部分的知识都有接触过,但是没有形成体系

接下来就慢慢学习吧,挖个坑一直学

  • 自动机

以基本码为单位对输入进行计算得到输出的过程

看了一会,发现第一章和第二章的内容与编译原理的内容相似,介绍了语法分析树,语言文法

  • 图灵机

图灵机是比自动机应用更为广泛的一种计算模型,非确定型图灵机(NTM)的移动不能为转移函数准确地决定,它的转移函数是多值的。如果将这些函数值放在仪器形成一个子集,那么也可以把它看成一个集值函数。除此之外,NTM和DTM没有区别,就是在分析下一位的输入的时候,它的输出是不确定的

到了第5章正式介绍计算复杂性理论

  • 不同计算模型的算法复杂性的度量的尺度时不同的,但都从不同角度描述了一个算法的安度。一个算法的复杂性是由这类问题的固有安度决定的,它在某种意义上应独立于计算它的模型,但是,当我们涉及一个具体问题时,不可避免的要谈到这个问题的所谓体积,或称大小
  • 时间复杂性

如果一个问题的大小是n,解决这一问题的某一算法所学的时间为T(n),它是n的某一函数。T(n)称为这一算法的时间复杂性。当输入量n逐渐加大时,时间复杂性的极限情形,称为算法的渐进时间复杂性。类似地,可以定义一个算法的空间复杂性和渐进空间复杂性。在算法的复杂性讨论中,人们主要是研究算法的时间复杂性,尤感兴趣的是算法的渐进时间复杂性,而对算法渐进复杂性的讨论往往只给出它的关于问题大小n的数量级。

  • RAM程序的时空耗费标准:均匀耗费标准和对数耗费标准

均匀耗费标准是指用每执行一条RAM指令需要一个单位时间,每个数据需要占有一个单位空间的假设来分析一个RAM程序。这样做是比较粗略的,实际计算机执行不同类型的指令所需的时间一般并不相等,同一条指令的执行时间因操作数的不同也会有不同

对数耗费标准是由于实际的计算机字长很有限和长度固定而产生的。在RAM中,假定一个内存储单元可以存放一个任意大小的整数且任何操作都可以用一条指令完成。有时这是与实际情况不相符的,因为一个整数n在存储器里要占用log2(n)+1个单位,当这个位数超过机器字长时,不仅一个存储单元放不下它,而且有关它的运算也不可能用一条指令来完成

  • 算法复杂度分析的数学基础

算法复杂度分析中常用的一些数学基础知识,包括集合论、逻辑学、概率论以及代数领域的知识

  • p类问题

目前人们已经证明了一些问题,它的时间复杂性时多项式的,这只须涉及一个实现它的时间复杂性时多项式阶的算法即可,例如分类问题(有成)排序问题。这样一类问题本称为P类问题

  • 顽型问题

还有一类问题,人们已经设计出实现它的时间复杂性为指数阶的算法,并且已证明该问题不存在时间复杂性为多项式阶的算法(例如梵塔问题),这样一类问题称为顽型问题。

  • NP问题

由这样一类问题,人们目前已设计的实现它的算法其时间复杂性为指数阶的,但还不能肯定有没有多项式阶的算法,例如m-可着色问题 。为了研究这类问题,人们又设计一种称为非确定型图灵机的计算模型,这些问题对应一个非确定型图灵机,而且可以在多项式时间内完成计算。人们称这类问题为NP问题,NP是Nondeterministic Polynomial的缩写。

作为一本书,还有很多内容,看完是不可能的,到此为止,有个比较清晰的概念了

《计算复杂性与算法分析》和《计算复杂性》学习相关推荐

  1. 学习目标以及计划、打卡——大一下学期

    更新目标 1.英语四级拿证 2.流利阅读打卡80天反学费(已完成) 3.完成CDSN课程的学习(C/C++进阶)(已完成) 4.扇贝单词打卡学习 5.阅读3本课外书(已完成) 再次更新计划 周一: 练 ...

  2. 真正的计算机科学,清华大学“姚半”的创始人,计算机科学界真正的“泰国斗”...

    他就像计算机科学界的"神". 他领导的计算机研究团队已成为当今计算机科学界的中流. 柱. 受计算机科学界的影响,今天在中国几乎没有人. 在教书育人方面,他可以说是陶立曼的世界. 秉 ...

  3. 历届图灵奖 (Turing award)得奖名单

    历届图灵奖 (Turing award)得奖名单 一.总结 一句话总结:各个方面都有. 二.历届图灵奖 (Turing award)得奖名单 Turing奖最早设立于1966年,是美国计算机协会在计算 ...

  4. 003--北大考研计算机--考研经验贴

    05年硕士学位研究生专业目录 计算机系统结构 (081201) 人数:4801.指令级并行处理与线程级并行处理 02.系统芯片设计方法学 03.微处理器设计技术 04.软硬件协同设计 05.网络信息体 ...

  5. 计算机科学与技术0812和0775,计算机科学与技术0812.doc

    计算机科学与技术0812 计算机科学与技术(0812) Computer Science and Technology 一.学科.专业及研究方向简介 1.学科.专业简介 计算机科学与技术学科涉及数学. ...

  6. 河南大学计算机科学研究生,河南大学计算机科学与技术硕士研究生培养方案

    河南大学计算机科学与技术硕士研究生专业是计算机与信息工程学院下设的研究生专业,计算机与信息工程学院拥有遥感信息科学与技术一个二级博士点和计算机科学与技术.软件工程.控制科学与工程3个一级硕士点,设有计 ...

  7. 关于GPT,人工智能,以及人的一些思考

    注:这是一篇关于人工智能与人的万字长文.一次性读完可能会有困难.建议分次阅读. 为了写这篇文章,我用掉半年的读书钱自己训练了乞丐版的GPT模型. 在这篇文章中我从如下几个方面围绕人工智能进行了讨论,包 ...

  8. 【转载】 历届Turing奖得主名单

    Turing奖最早设立于1966年,是美国计算机协会在计算机技术方面所授予的最高奖项,被喻为计算机界的诺贝尔奖.它是以英国数学天才Alan Turing先生的名字命名的,Alan Turing先生对早 ...

  9. 500万AI人才缺口!教育部新增高职人工智能专业

      转载于 新智元   编辑:亮亮 [新智元导读]继浙江大学等35所高校本科新增人工智能专业后,教育部近日再次发布公告,高校职业教育(专业)新增人工智能等9个专业.高校AI人才培养加速,将填补我国50 ...

  10. 人工智能人才争抢白热化?学好数学才能C位出道

    近代数字重要奠基人之一的德国数学家高斯曾说:"数学是科学的'皇后'." 在"大数据"和"人工智能"的浪潮中,算法是核心,而数学.统计学.概率 ...

最新文章

  1. 【实用】几个实用的webstorm、IDEA编辑器窗口快捷键设置,Alt+V垂直复制当前窗口,Alt+Shift+V将当前窗口复制到另一边的分割窗口显示,Alt+Shift+M移动当前活动窗口到另一边
  2. python如何调用文件_如何调用另一个python文件中的代码
  3. 特征重要性、特征集成+FeatureUnion、特征选择变换器+ColumnTransformer、标签特征变换+TransformedTargetRegressor、特征质量、自动学习数据中的特征
  4. kcf跟踪算法实例整理
  5. 计算机病毒按破坏性分为哪两类,计算机导论复习要点.doc
  6. php 状态模式,PHP设计模式(十九)—状态模式 (State Pattern)
  7. spring-quartz
  8. access 战地1不加入ea_炒牛肉时,想要牛肉嫩滑又不老,只需加入1样东西,很多人都不懂...
  9. idea overlays文件夹_Intellij IDEA 文件修改提示星号
  10. tf.read_file和tf.image.decode_jpeg处理图片(转)
  11. 阿里云云计算 39在线实验--PolarDB MySQL
  12. 数据结构常见面试题,一网打尽!
  13. 扫码枪 - 优惠卷核销
  14. vue3响应式原理-effect
  15. 唐山盐碱滩成渤海明珠 国稻种芯·中国水稻节:河北曹妃甸大米
  16. 12.14黄金白银欧美盘走势分析及期货原油操作建议
  17. xmanager 修改linux ip,Linux配置XManager
  18. 云服务器怎么恢复初始设置
  19. 带宽、峰值带宽,网速是什么,它们有什么关系?
  20. 两寸标准证件照大小是多少?分享两种调整尺寸的方法

热门文章

  1. 杭州电子科技大学计算机专业考研分数线,2019杭州电子科技大学研究生分数线汇总(含2016-2019历年复试)...
  2. 如何通过Flow制作简单的工作流 - 请假审批2
  3. Qcom平台,dump解析环境配置
  4. Altium Designer——usb信号线布线注意的问题——应使用差分布线
  5. 触摸屏 java_价值10W大洋的触摸屏技术揭秘。。。
  6. 【Nightingale (夜莺)监控系统安装配置】
  7. 打印没反应/打印耗时长/not accessible
  8. 三极管NPN和PNP的区别
  9. 深度学习半年学习心得(如何入门)
  10. 2022-2027年中国OLED发光和传输材料市场规模现状及投资规划建议报告