- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机导论(Introduction to Computers) 计算机学科的基本问题 北京语言大学 计算机导论 - Introduction to Computers 北京语言大学 北京语言大学信息科学学院 徐燕 数学 物理 计算机成为一门学科 四色问题 数据挖掘等 计算机学科和别的学科的区别 对问题进行抽象 可计算与不可计算问题 算法的复杂性问题 学科的基本问题 哥尼斯堡桥 对问题进行抽象的一个典型实例 欧拉的思路 他抽象出问题最本质的东西,忽视问题非本质的东西(如桥的长度等),从而将哥尼斯堡七桥问题抽象为一个数学问题,即经过图中每边一次且仅一次的回路问题了 问题的抽象 问题的简化 欧拉给出了哥尼斯堡七桥问题 的证明,还用数学方法给出了三条判定规则(判定每座桥恰好走过一次,不一定回到原点, 即对欧拉路径的判定): 如果通奇数座桥的地方不止两个,满足要求的路线是找不到的。 如果只有两个地方通奇数座桥,可以从这两个地方之一出发,找到所要求的路线。 如果没有一个地方是通奇数座桥的,则无论从哪里出发,所要求的路线都能实现。 根据第3点,可以得出,任一连通图存在欧拉回路的充分必要条件是所有顶点均有偶数度. 欧拉回路 抽象与总结 问题的解决 计算学科的问题,无非就是计算问题,从大的方面来说,分可计算问题与不可计算问题。可计算问题是存在算法可解的问题,不可计算问题是不存在算法可解的问题。 为便于理解,下面,分别以梵天塔(Hanoi,又译为汉诺)问题和停机问题来介绍可计算问题与不可计算问题。 可计算问题与不可计算问题 梵天塔问题 每次只能移动一个盘子; 盘子只能在三根柱子上来回移动,不能放在他处; 在移动过程中,三根柱子上的盘子必须始终保持大盘在下,小盘在上。 需要移动盘子的次数为: 264-1=18446744073709551615 假定每秒移动一次,一年,则僧侣们一刻不停地来回搬动,也需要花费大约5849亿年的时间。 假定计算机以每秒1000万个盘子的速度进行搬迁,则需要花费大约58490年的时间。 理论上可以计算的问题,实际上并不一定能行,这属于算法复杂性方面的研究内容。 时间复杂性 关于梵天塔问题算法的时间复杂度,可以用一个指数函数O(2n)来表示 当n很大(如10000)时,计算机是无法处理的 当算法的时间复杂度的表示函数是一个多项式,如O(n2)时,则可以处理。 一个问题求解算法的时间复杂度大于多项式(如指数函数)时将这一类问题称为难解性问题。 难解性问题 求出48 770 428 433 377 171的一个真因子 223 092 827是它的一个真因子 顺序的方法和并列的方法 证比求易算法 国王最先使用的是一种顺序算法,其复杂性表现在时间方面 后面提出的是一种并行算法,其复杂性表现在空间方面。 并行计算机系统求解问题的速度将随着处理器数目的不断增加而不断提高,从而解决难解性问题,其实这是一种误解。 当将一个问题分解到多个处理器上解决时,由于算法中不可避免地存在必须串行执行的操作,从而大大地限制了并行计算机系统的加速能力。 顺序算法和并行算法 P=NP?如果P=NP,则所有在多项式时间内可验证的问题都将是在多项式时间内可求解(或可判定)的问题。 要证明P≠NP,目前还无法做到这一点 。 P=NP? 停机问题(Halting Problem)是1936年图灵(A.M.Turing)在其著名论文《论可计算数及其在判定问题上的应用》中提出,并用形式化方法给予证明的一个不可计算问题。 该问题针对任意给定的图灵机和输入,寻找一个一般的算法(或图灵机),用于判定给定的图灵机在接收了初始输入后,能否到达终止状态,即停机状态。若能找到这样的算法,我们说停机问题可解,否则,不可解。换句话讲说,就是我们能不能找到这样一个测试程序,它能判断出任意的程序在接收了某个输入并执行后,能不能终止。若能,则停机问题可解,否则,不可解。 一个不可计算问题:停机问题 停机问题不可解?看起来好像不是的,毕竟有点编程经历的人都会遇到判断一个程序是否是进入死循环的时候,并且往往能判定该程序是否能在某种情况下终止或不能终止。例如: main() { int i=1; while(i10) { i=i+1; } return; } 停机问题不可解 * * 北京语言大学 计算机导论 - Introduction to Computers
您可能关注的文档
最近下载
- 香港电影简史年表.docx VIP
- 临床免疫学检验:免疫原和抗血清的制备.ppt VIP
- 项目生命周期与项目管理过程课件.pptx VIP
- GB50348-2004 安全防范工程技术规范.docx VIP
- 大模型时代的具身智能.pptx
- 2024-2025学年安徽省合肥四十五中九年级(上)第一次月考物理试卷(含答案).pdf VIP
- 戏剧教育与戏剧表演技巧培训.pptx VIP
- 新药研究与开发技术 课件全套 第1--7章 概论、新药的发现研究---新药选题与信息利用.pptx
- 2025年中国智慧停车行业研究报告-鼎帷咨询.docx
- 《AI时代新机遇》AIGC如何为教师赋能培训课件.pptx VIP
文档评论(0)