专业导论04计算机学科的基本问题.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
专业导论04计算机学科的基本问题

计算学科的基本问题 首先介绍一个对问题进行抽象的典型实例——哥尼斯堡七桥问题。 然后,通过“梵天塔”问题和“停机问题”分别介绍学科中的可计算问题和不可计算问题。 从“梵天塔”问题再引出算法复杂性中的难解性问题、P类问题和NP类问题,证比求易算法,P=NP是否成立的问题,旅行商问题与组合爆炸问题,找零问题、背包问题与贪婪算法。 要描述和实现算法,就要编写程序。 从“GOTO语句”的争论,介绍程序设计中的结构问题; 以“哲学家共餐”问题为例,介绍计算机系统中的软硬件资源的管理问题; 以“两军问题”为例介绍计算机网络的有关问题; 以“图灵测试”和“中文屋子”为例介绍人工智能的有关问题。 最后,给出计算机科学各主领域的基本问题。 4.1 引言 科学研究从问题开始,或者说科学始于问题而非观察,尽管通过观察可以引出问题,但在观察时必定带有问题,带有预期的设想,漫无目的的观察是不存在的。 人们对客观世界的认识过程正是一个不断提出问题和解决问题的过程,这个过程反映的正是抽象、理论和设计3个过程之间的相互作用,它与3个过程在本质上是一致的。 针对学科抽象第一的教学原则,我们先介绍一个对问题进行抽象的典型实例,即哥尼斯堡七桥问题。然后再介绍计算学科的基本问题。 4.2哥尼斯堡七桥问题 17世纪的东普鲁士有一座哥尼斯堡城,城中有一座奈佛夫岛,普雷格尔河的两条支流环绕其旁,并将整个城市分成北区、东区、南区和岛区4个区域,全城共有7座桥将4个城区相连起来。 通过这7座桥到各城区游玩,问题:寻找走遍这7座桥的路径,要求过每座桥只许走一次,最后又回到原出发点。 问题的抽象 1736年,大数学家列昂纳德·欧拉(L.Euler)发表了关于“哥尼斯堡七桥问题”的论文。 他抽象出问题最本质的东西,忽视问题非本质的东西(如桥的长度等),从而将哥尼斯堡七桥问题抽象为一个数学问题,即经过图中每边一次且仅一次的回路问题了。 欧拉回路 欧拉给出了哥尼斯堡七桥问题 的证明,还用数学方法给出了三条判定规则(判定每座桥恰好走过一次,不一定回到原点, 即对欧拉路径的判定): 如果通奇数座桥的地方不止两个,满足要求的路线是找不到的。 如果只有两个地方通奇数座桥,可以从这两个地方之一出发,找到所要求的路线。 如果没有一个地方是通奇数座桥的,则无论从哪里出发,所要求的路线都能实现。 根据第3点,可以得出,任一连通图存在欧拉回路的充分必要条件是所有顶点均有偶数度. 哈密尔顿回路问题 问题:在某个图G中,能不能找到这样的路径,即从一点出发不重复地走过所有的结点,最后又回到原出发点。 “哈密尔顿回路问题”与“欧拉回路问题”的不同点 “哈密尔顿回路问题”是访问每个结点一次,而“欧拉回路问题”是访问每条边一次。 对图G是否存在“欧拉回路”前面已给出充分必要条件,而对图G是否存在“哈密尔顿回路”至今仍未找到满足该问题的充分必要条件。 图论的形成和发展 欧拉的论文为图论的形成奠定了基础。 图论已广泛地应用于 计算学科 运筹学 信息论 控制论等学科 图论已成为我们对现实问题进行抽象的一个强有力的数学工具。 图论在计算学科中的作用越来越大,图论本身也得到了充分的发展。 4.3 可计算问题与不可计算问题 计算学科的问题,无非就是计算问题,从大的方面来说,分可计算问题与不可计算问题。可计算问题是存在算法可解的问题,不可计算问题是不存在算法可解的问题。 为便于理解,下面,分别以梵天塔(Hanoi,又译为汉诺)问题和停机问题来介绍可计算问题与不可计算问题。 4.3.1 梵天塔问题 相传印度教的天神梵天在创造地球这一世界时,建了一座神庙,神庙里竖有三根宝石柱子,柱子由一个铜座支撑。梵天将64个直径大小不一的金盘子,按照从大到小的顺序依次套放在第一根柱子上,形成一座金塔(如图2.3所示),即所谓的梵天塔(又称汉诺塔)。天神让庙里的僧侣们将第一根柱子上的64个盘子借助第二根柱子全部移到第三根柱子上,即将整个塔迁移,同时定下3条规则: 每次只能移动一个盘子; 盘子只能在三根柱子上来回移动,不能放在他处; 在移动过程中,三根柱子上的盘子必须始终保持大盘在下,小盘在上。 算法:C语言描述 hanoi(int n, char left, char middle, char right) { if (n==1) move(1, one, _ , three); else { hanoi(n-1, left, right, middle); move(1, left, _, right); hanoi(n-1, middle, left, right); } } 当n=64时,移动次数=?花费时间=?

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档