概述
计算机科学导论(徐志伟 孙晓明) - WQY 2016.07.10
这不是总结!这不是总结!这不是总结 !重要的事情说三遍 !
1. 计算过程与计算思维:十种理解
理解1 :自动执行。计算机能够自动执行由离散步骤组成的计算过程。
理解2 :正确性。计算机求解问题的正确性往往可以精确地定义并分析。
理解3 :通用性。计算机能够求解任意可计算问题。
理解4 :构造性。人们能够构造出聪明的方法让计算机有效地解决问题。
理解5 :复杂度。这些聪明的方法(算法)具备时间/空间复杂度。
理解6 :连通性。很多问题涉及用户/数据/算法的连接体,而非单体。
理解7 :协议栈。连接体的节点之间通过协议栈通信交互。
理解8 :抽象化。少数精心构造的计算抽象可产生万千应用系统。
理解9 :模块化。多个模块有规律地组合成为计算系统。
理解10 :无缝衔接。计算过程在计算系统中流畅地执行。
2. 计算思维的五个主要目标:自动、通用、算法、联网、抽象。
自动。这个目标对应第一个理解:离散步骤自动执行。计算机科学首先解决的科技
难题是将描述物理世界和数学世界的各种公式和方程离散化、数字化,并将连续时
间变成离散的步骤,让求解这些公式和方程的计算过程能够自动执行,而不是像使
用算盘那样,每一步都需要人工操作。自动执行有助于大幅度提升计算速度,降低
计算成本。
通用。这个目标对应第二、三个理解:正确性与通用性。在解决了某些数学方程的
计算过程自动执行问题之后,人们很自然地猜测:什么样的计算过程能够自动执行
呢?是不是所有的计算过程都能被计算机自动执行?是不是所有求解数学方程的
计算过程都能被计算机自动执行?存不存在某一种计算机,它能够用于执行所有计
算过程、解决所有计算问题?通用性难题的一个重要里程碑发生在1936 年,图灵
从理论上提出了一种通用计算机,能够求解任意可计算问题。而要做到这一点,必
须精确地定义并分析计算机求解问题的正确性,包括定义什么是可计算问题、什么
是不可计算问题。
算法。这个目标对应第四、五个理解:构造性与复杂度。知道某个问题可计算还远
远不够。一个问题可能通过无穷多种计算过程得到解决。我们需要找到或构造出有
效的方法(称为算法),能够花费较短的计算时间、使用较少的计算资源,通过执
行比较聪明的特定计算过程来解决问题。
联网。这个目标对应第六、七个理解:连通性与协议栈。人们很早就注意到了,很
多问题只用单点执行的算法不能解决。比如,互联网搜索问题(即搜索数以百万计
的互联网网站的信息,找到相关答案),单点算法就不能解决。我们需要将多点的
数据和算法连接起来、组成网络,才能解决这些问题。
抽象。这个目标对应第八、九、十个理解:抽象化、模块化、无缝衔接。抽象
(abstraction)贯穿计算机科学的发展史,是计算机科学最重要的研究目标和研究
对象,同时又是较难掌握的计算机科学的根本方法。计算过程都是在计算系统中执
行的。计算机科学并不是针对每一个问题、每一个计算过程设计一套计算系统,而
是归纳出少数精心构造的计算抽象,有规律地组合起来,产生万千应用系统。也就
是说,计算机科学讲究尽量用一个(或一套)通用抽象支持众多具体应用需求。自
动执行、通用、算法、网络都涉及抽象。
1
计算机科学导论(徐志伟 孙晓明) - WQY 2016.07.10
3. 计算思维理解之一:计算过程的有限步骤与自动执行
计算过程刻画 :
1. 一个计算过程是解决某个问题的有限个计算步骤的执行序列。
2. 计算过程有一个起始步骤(第一步骤)。
3. 每个步骤执行一个操作,然后进行到下一步骤。
a) 每个操作可以是一个算术逻辑运算操作,也可以是一个访存操作、一个跳转操作、
最后
以上就是老迟到向日葵为你收集整理的徐志伟计算机科学导论,这不是总结!重要的事情说三遍!.pdf的全部内容,希望文章能够帮你解决徐志伟计算机科学导论,这不是总结!重要的事情说三遍!.pdf所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复