悼念伟大的计算机科学家Edsger Wybe Dijkstra

合集下载

汉诺塔——精选推荐

汉诺塔——精选推荐

汉诺塔2018-02-17⼩智超级数学建模1汉诺塔古印度神话故事中,在⼤梵天创造世界的时候,为了考验⼈类,做了三根⾦刚⽯柱⼦,在其中⼀根柱⼦上从下往上按照⼤⼩顺序摞着64⽚黄⾦圆盘。

在⼩圆盘上不能放⼤圆盘,在三根柱⼦之间⼀次只能移动⼀个圆⼤梵天便命令教徒把圆盘按⼤⼩顺序重新摆放在另⼀根柱⼦上,但他还规定了⼀个规则:在⼩圆盘上不能放⼤圆盘,在三根柱⼦之间⼀次只能移动⼀个圆盘。

世界终结的时候。

⼤梵天对教徒们预⾔:当你们完成移动的那⼀刻,就是这个世界终结1883年,法国数学家Édouard L ucas有⼀次碰巧听到这个故事,⽆聊中的Lucas开始思考怎么玩,然⽽Lucas发现移动64层圆盘的过程⾮常繁杂,脑袋根本⽆法承载这么⼤的计算量,便尝试将问题进⾏简化:把6个圆盘从⼀个柱⼦移动到另外⼀个柱⼦,最少需要多少步可以完成?汉诺塔问题。

Lucas也给这个问题取名为汉诺塔问题汉诺塔问题⽰意图其实对于汉诺塔问题,⼤家都应该很熟悉。

不过为了计算更简便些,我们先尝试汉诺塔问题只有3个圆盘的情况下应该怎么做?这个估计⼤家在第⼀时间应该能够反应出来,最后发现只需7步就可以完成。

3个圆盘的汉诺塔解法当圆盘数量增加6个以后,这个时候可能就开始有点懵了:6个圆盘的汉诺塔解法递归解法:可以发现,随着圆盘数的增加,汉诺塔问题难度越来越⼤。

不过⼈类最不怕的就是解决问题,针对汉诺塔问题,数学家们提出了⼀个⾮常巧妙解法,递归S t ep 1:将A柱⼦上的n-1个圆盘搬到B柱⼦上S t ep 2:将A柱⼦上剩下的⼤圆盘搬到C柱⼦上S t ep 3:将B柱⼦上的n-1个圆盘搬到C柱⼦上递归解法的关键步骤:移动最⼤的圆盘到⽬的地我们再考虑⼀下n-1个圆盘是怎么从A柱⼦搬到B柱⼦上的。

我们可以重复上述的过程,完全跟搬从A柱⼦把n个圆盘搬到C柱⼦的过程类似。

S t ep 1:将A柱⼦上的n-2个圆盘搬到C柱⼦上S t ep 2:将A柱⼦上第n-1个⼤圆盘搬到B柱⼦上S t ep 3:将C柱⼦上的n-1个圆盘搬到B柱⼦上移动的过程通过这种递归⽅式可以清晰描述出来,所以我们只需要从最顶层进⾏考虑。

计算机重要人物及算法的力量

计算机重要人物及算法的力量

计算机科学家-约翰· 冯· 诺依曼
1903年12月28日,在布达佩斯诞 生了一位神童,这不仅给这个家庭 带来了巨大的喜悦,也值得整个计 算机界去纪念。正是他,开创了现 代计算机理论,其体系结构沿用至 今,而且他早在40年代就已预见到 计算机建模和仿真技术对当代计算 机将产生的意义深远的影响。他, 就是约翰· 冯· 诺依曼(John Von Neumann)。
李开复之算法的力量(12)
算法并不局限于计算机和网络 举一个计算机领域外的例子:在高能物理研究方面,很多实验 每秒钟都能几个TB的数据量。但因为处理能力和存储能力的不 足,科学家不得不把绝大部分未经处理的数据丢弃掉。可大家 要知道,新元素的信息很有可能就藏在我们来不及处理的数据 里面。同样的,在其他任何领域里,算法可以改变人类的生活。 例如人类基因的研究,就可能因为算法而发明新的医疗方式。 在国家安全领域,有效的算法可能避免下一个911的发生。在 气象方面,算法可以更好地预测未来天灾的发生,以拯救生命。 所以,如果你把计算机的发展放到应用和数据飞速增长的大环 境下,你一定会发现;算法的重要性不是在日益减小,而是在 日益加强。
计算机科学家-姚期智
姚期智(Andrew Chi-Chih Yao),世界 著名计算机学家,2000年图灵奖得主,美 国科学院院士,美国科学与艺术学院院士, 中国科学院外籍院士,清华大学高等研究中 心教授。1967年获得台湾大学物理学士学 位,1972年获得美国哈佛大学物理博士学 位,1975年获得美国伊利诺依大学计算机 科学博士学位。1975年至1986年曾先后 在美国麻省理工学院数学系、斯坦福大学计 算机系、加利福尼亚大学伯克利分校计算机 系任助教授、教授。1986年至2004年在 普林斯顿大学计算机科学系担任Wiliam and Edna Macaleer工程与应用科学教 授。2004年起在清华大学任全职教授。

Dijkstra

Dijkstra

2.崭新的计算机语言:ALGOL
1952至1956年间,程序设计经历了一 个演变的过程,由于系统分组的复杂 性要求操作系统更具结构性的。迪科 斯彻的最短路径算法在这方面取得了 突出进展,在全世界的推动下,一个 科学的计算机语言:ALGOL,不久就 诞生了。迪科斯彻给ALGOL 60下了这 样的定义:“一个奇迹就这样被简单 地创造了。”1962年,罗马公约同意 了其大部分的详述,同年8月,国际信 息处理联盟和程序设计语言联盟批准了该报告。在 ALGOL 60被定义之后,数学中心首先在荷兰开设了 ALGOL 60程序设计语言的课程,接着,1961年在英 国的布莱顿。这是MC一个新的开端:程序设计教育。
EdsgerWybeDijkstra
———结构程序设计之父
contents
1. Dijkstra简介 2. 杰出成就 3. 获得的奖项 4. 生平经历 5. Dijkstra的经典言论
南京邮电大学
简介
艾兹格W迪科斯彻,荷兰人。 计算机科学家,毕业并就职 于荷兰莱顿大学,早年钻研物理及数学,而后转为计算机学。 迪科斯彻于1930年5月11日生于鹿特丹,他的父亲是一位化学 家,他的母亲是一位数学家,这种充满科学气息的家庭背景 对于他的职业生涯乃至他的整个人生都有着深刻的影响。 迪科斯彻是计算机先驱之一,开发了程序设计的框架结构。 曾经提出“goto有害论” ,解决了有趣的“哲学家聚餐”问 题,提出了目前离散数学应用广泛的最短路径算法。与唐纳
4.奥斯汀:新纪元的起点
南京邮电大学
5.得克萨斯州立大学:超级计算机
1999年,迪科斯彻在他69 岁的时候,结束了作为教授 的职业生涯。回顾47年的 艰苦工作,为了一个更好、 更简单、更准确的编程方法 而不停地努力。迪科斯彻认 为最具价值的是他对学生的 教导,而且能够向人们展示 这项工作可以做的比他们所 知或所想象的更加出色。能 够做到吸引他人,已经成为了他最有收获的活动。 “对于我来 说,计算机科学上的第一个挑战是如何把命令维持在有限个内。 第二个也是同样重要的挑战是如何传授解决那第一个问题的方 法:只培养你个人的才智是不够的,你必须教会其他人如何去 发挥他们的才智。你越关注这两个挑战,你越会清楚的看到它 们只不过是同一枚硬币的两个面:自学是去发现什么东西是可 以被教会的。”

全国青少年信息学奥林匹克联赛初赛练习卷(六)答案

全国青少年信息学奥林匹克联赛初赛练习卷(六)答案

全国青少年信息学奥林匹克联赛初赛练习卷(六)答案(普及组PASCAL语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(20题,每题1.5分,共30分)1.小张用十六进制,八进制和十进制写了如下一个等式:52 – 19 = 33式中三个数是各不相同进位制的数,试问52、19、33,分别为___________.(A)八进制,十进制,十六进制(B)十进制,十六进制,八进制(C)八进制,十六进制,十进制(D)十进制,八进制,十六进制2.下列if语句中,endif表示相应if的结束:y=0if x<0then y=5else if x<10 theny=10if x<100 then y=100 endifelse y=200endifendif试指出:当x=80时,运行的结果为__E__,当x=5时结果为__D_。

A、y=9B、y=5C、y=10D、y=100E、y=2003.下列哪个网络上常用的名字缩写是错误的()。

A.WWW(World Wide Web)B.URL(Uniform Resource Locator)C.HTTP(Hypertext Transfer Protocol)D.FTP(Fast Transfer Protocol){应该是“File Transfer Protocol”}E.TCP(Transfer Control Protocol)。

4.不能在Linux 上使用的网页浏览器是()。

A. Internet ExplorerB. NetscapeC. OperaD. FirefoxE. Mozilla5.一位艺术史学家有20000 幅1024 * 768 的真彩色图像,如果将这些图像以位图形式保存在CD 光盘上(一张CD 光盘的容量按600M计算),大约需要()张CD光盘。

A. 1B. 10C. 100D. 1000E. 10000(1024*768*32*20000)/ (8*1024*1024*600) =100张6.由3个a,5个b和2个c构成的所有字符串中,包含子串“abc”的共有()个。

NOIP 题目

NOIP 题目

NOIP2008一、单项选择题(共10题,每题1.5分,共计15分。

每题有且仅有一个正确答案)。

1.在以下各项中,()不是操作系统软件。

A.Solaris B.Linux C.Sybase D.Windows Vista E.Symbian2.微型计算机中,控制器的基本功能是()。

A.控制机器的各个部件协调工作B.实现算数运算与逻辑运算C.存储各种控制信息D.获取外部信息E.存放程序和数据3.设字符串S=“Olympic”,S的非空字串的数目是()。

A.29 B.28 C.16 D.17 E.74.完全二叉树有2*N-1的结点,则它的叶子结点数目是()。

A.N-1 B.2*N C.N D.2N-1 E.N/25.将数组{8,23,4,16,77,-5,53,100}中元素从大到小按顺序排序,每次可以交换任意两个元素,最少要交换()次。

A.4 B.5 C.6 D.7 E.86.设栈S的初始状态为空,元素a,b,c,d,e,f依次入栈,出栈顺序为b,d,c,f,e,a那么栈容量至少应该是()。

A.6 B.5 C.4 D.3 E.27.与十进制数28.5625相等的四进制数是()A.123.21 B.131.22 C.130.22 D.130.21 E.130.208.递归过程和函数调用时,处理参数和返回地址,通常使用一种称为()的数据结构。

A.队列B.多维数组C.线性表D.链表E.栈9.TCP/IP 是一组构成互联网基础的网络协议,字面上包括两组协议:传输控制协议(TCP)和网际互联协议(IP)。

TCP/IP协议把Internet网络系统描述成具有4个层次功能的网络模型,其中提供源节点和目的节点之间的信息传输服务,包括寻址和路由器选择等功能的是()。

A.链路层B.网络层C.传输层D.应用层E.会话层10.对有序数组{5,13,19,21,37,56,64,75,88,92,100}进行二分查找,等概率情况下,查找成功的平均查找长度(平均比较次数)是()。

由三村最短路问题两个解法引发的推广

由三村最短路问题两个解法引发的推广

由三村最短路问题两个解法引发的推广背景在计算机科学中,最短路算法是一个基本的算法。

计算机科学的研究者一直在寻找更快、更有效的算法来解决这个问题。

因为最短路问题在许多实际应用程序中都是必须解决的问题。

其中一个最著名的应用是导航问题。

在最短路算法中,三村最短路问题是其中一个比较有名的问题。

三村最短路问题是指,在一个由三个节点组成的图中,寻找从第一个节点到第三个节点的最短路径。

不过,这个问题也可以扩展到多个节点的情况。

在这个问题中,我们需要找到一个算法,去计算每一个节点之间的距离,然后找到从起点到终点的最短路径。

这个问题在实际应用中是非常有用的,比如说在导航系统中,起点是你的当前位置,终点是你要到达的目的地。

解法一:Dijkstra算法Dijkstra算法是一个比较有名的最短路算法。

它是由荷兰计算机科学家Edsger Wybe Dijkstra在1956年发明的。

Dijkstra算法的核心是一个图中的顶点集合,被划分为两个部分:一个是已找到最短路径的顶点集合;另一个是未找到最短路径的顶点集合。

算法的步骤如下:1.初始化:将起点标记为已访问,并且将起点到起点的距离设为0,同时把起点的所有邻居节点加入未访问节点集合中。

2.遍历:对于所有的未访问节点中,选择当前距离起点最近的节点进行访问。

3.更新:对于已访问节点的邻居节点,更新它们到起点的距离,如果更新后的距离小于原来的距离,则更新邻居节点的距离(注意这里只会更新未访问节点的距离)。

如果更新了距离,则更新邻居节点到起点的路线。

4.重复步骤2和3直到访问完所有未访问节点或到达终点。

使用Dijkstra算法求解三村最短路问题,只需要按照上述步骤进行即可。

解法二:Floyd算法Floyd算法是另外一种比较有名的最短路算法,它是由Robert W. Floyd在1962年发明的。

Floyd算法的思路是一个动态规划算法,它通过中转点进行路径优化,最终得出最短路径。

因为它是一个动态规划算法,所以它的时间复杂度比较高,但是在实际应用中,还是被广泛采用的。

计算机基础-练习题

计算机基础-练习题

以下题目均为不定项选择题。

1. 以下不属于CPU的组成部件的是()。

A. 控制器B. 运算器C. 寄存器D. 高速缓存2. 129.168.0.1属于()。

A. A类地址B. B类地址C. C类地址D. D类地址3. 使用Email时,接收和发送电子邮件的服务器分别称为()服务器和()服务器。

A. POP3 SMTPB. SMTP POP3C. HTTP FTPD. FTP HTTP4. 不能在Linux上使用的网页浏览器是()。

A. Internet ExploreB. NetscapeC. OperaD. Firefox5. 下列属于冯·诺依曼计算机模型的核心思想是()。

A. 采用二进制表示数据和指令B. 采用“存储程序”工作方式C“计算机硬件有五大部件(运算器、控制器、存储器、输入和输出设备)D. 结构化程序设计方法E. 计算机软件只有系统软件6. 计算机系统中按传送信号不同可将总线分为()。

A.地址总线B.控制总线C.数据总线D.内存总线E.主板总线7. 在整数的补码表示法中,以下说法正确的是()。

A.只有负整数的编码最高位为1B.在编码的位数确定后,所能表示的最小整数和最大整数的绝对值相同C.整数0只有一个唯一的编码D.两个用补码表示的数相加时,若在最高位产生进位,则表示运算溢出8. 下列说法中,哪个(些)是错误的()。

A. 程序是指令的序列,它有三种结构:顺序、分支和循环。

B. 数据总线决定了中央处理器CPU所能访问的最大内存空间的大小。

C. 中央处理器CPU内部有寄存器组,用来储存数据。

D. 不同厂家生产的CPU所能处理的指令集是相同的。

E. 数据传输过程中可能会出错,奇偶校验法可以检测出数据中哪一位在传输中出了差错。

9. 设字长n=8位,x=-1011011B,以下说法正确的是()。

A. [x]原= 11011011BB. [x]原= 对应十进制为-91C. [x]反= 10100100BD. [x]补= 10100101BE. [x]补= 对应十进制为-3710. 表达式(1 + 34) ×5 – 56 / 7 的后缀表达式为()。

学习电脑信息信息奥赛理论部分选择题60道

学习电脑信息信息奥赛理论部分选择题60道

信息奥赛理论部分选择题60道5.CPU访问内存的速度比访问下列哪个存储设备要慢( )。

A)寄存器 B)硬盘 C)软盘 D)磁带 E)光盘6.下列电子邮件地址,正确的是( )。

A)*****************)**********************.jpC)162.105.111.22 D)E)http://7.下列哪个不是个人计算机的硬件组成部分( )。

A)主板 B)操作系统 C)电源 D)硬盘 E)软驱8.第一个给计算机写程序的人是( )。

A)Alan Mathison Turing B)Ada LovelaceC)John von Neumann D)John McCarthy E)Edsger Wybe Dijkstra9.十进制数2003等值于二进制数( )。

A)11111010011 B)10000011 C)110000111 D)010000011l E)111101001110.下列关于程序语言的叙述,不正确的是( )。

A)编写机器代码不比编写汇编代码容易。

B)高级语言需要编译成目标代码或通过解释器解释后才能被CPU执行。

C)同样一段高级语言程序通过不同的编译器可能产生不同的可执行程序。

D)汇编代码可被CPU直接运行。

E)不同的高级语言语法略有不同。

11.假设A=true,B=false,C=true,D=true,逻辑运算表达式A∧B∨C∧D的值是( )。

A)true B)false C)0 D)1 E)NULL12.下列关于文件的叙述,不正确的是( )。

A)一个可执行程序其实也是一个文件。

B)文件可大可小,大的文件一张软盘装不下。

C)一个文件夹下面可以有两个同名的文件,只要它们的大小不同就行了。

D)文件的创建日期和最新修改日期可以在资源管理器中看到。

E)某些文件的内容可以用记事本(Notepad)看到。

13.活动硬盘的容量比固定硬盘的容量( )。

A)大 B)小 C)相等 D)不一定大 E)大致相等14.美籍匈牙利数学家冯·诺依曼对计算机科学发展所做出的贡献是:()A、提出理想计算机数学模型,成为计算机科学理论基础B、是世界上第一个编写计算机程序的人C、提出存储程序工作原理,并设计出第一台具有存储程序功能的计算机EDVACD、采用集成电路作为计算机的主要功能部件E、指出计算机性能将以每两年翻一番的速度向前发展15、下列网络中常用的名字缩写对应的中文解释错误的是()A、WWW(World Wide Web):万维网B、URL(Uinform Resource Locator):统一资源定位器C、HTTP(Hypertext Transfer Protocol):超文本传输协议D、FTP (File Transfer Protocol):快速传输协议E、TCP (Transfer Control Protocol):传输控制协议16、下面哪个部件对于个人桌面电脑的正常运行不是必需的()A、cpuB、显卡(图形卡)C、光驱D、主板E、内存17、下列哪个软件属于操作系统软件()A、Microsoft WordB、金山词霸C、FoxmailD、WinRARE、Red Hat Linux18、下列哪个不是计算机存储设备()、A、文件管理器B、内存C、高速缓存D、硬盘E、U盘19、下列说法中错误的是()A、CPU的基本功能就是执行指令B、CPU访问内存的速度快于访问高速缓存的速度C、CPU的主频是指CPU在1秒内完成的指令周期数D、在一台计算机内部,一个内存地址编码对应唯一的一个内存单元E、数据中线的宽度决定了一次传递数据量的大小20、用静电吸附磨粉后转移到纸张上,是那种输出设备的工作方式()A、针式打印机B、喷墨打印机C、激光打印机D、笔式绘图仪E、喷墨绘图仪21、一台计算机如果要利用电话线上网,就必须配置能够对数字信号和模拟信号进行互相转换的设备,这种设备是()A、调制解调器B、路由器C、网卡D、网关E、网桥22、下列哪个不是数据库软件的名称()33. 下列关于高级语言的说法错误的是()。

迪杰斯特拉算法最短路径

迪杰斯特拉算法最短路径

迪杰斯特拉算法最短路径迪杰斯特拉算法(Dijkstra's algorithm)是一种用于计算图中最短路径的算法。

它是由荷兰计算机科学家艾兹赫尔·迪杰斯特拉(Edsger Wybe Dijkstra)于1956年提出的,并且被广泛应用于网络路由和地图导航等领域。

迪杰斯特拉算法可以解决的问题是,给定一个带有非负权重的有向图和一个起始节点,找出从起始节点到其他所有节点的最短路径。

该算法采用了贪心的策略,即每次选择当前离起始节点最近的节点进行扩展,直到扩展到目标节点为止。

算法的具体步骤如下:1.初始化:将起始节点的距离设置为0,其他节点的距离设置为无穷大。

2.创建一个优先队列(通常是最小堆),用于存储待扩展的节点。

将起始节点加入队列。

3.循环以下步骤直到队列为空:-从队列中取出距离起始节点最近的节点,记为当前节点。

-如果当前节点已被访问过,则跳过该节点。

-更新与当前节点相邻节点的距离。

如果经过当前节点到达某个相邻节点的路径比之前计算的路径短,则更新这个节点的距离。

-将未访问过的相邻节点加入队列。

4.循环结束后,所有节点的最短路径已被计算出。

迪杰斯特拉算法的核心思想是不断扩展距离起始节点最近的节点,通过更新节点的距离,逐步获取最短路径。

算法的时间复杂度为O(V^2),其中V是图中的节点数量。

这是因为每次循环需要查找距离起始节点最近的节点,而在最坏情况下,这个操作需要遍历所有节点。

以下是一个简单的例子来说明迪杰斯特拉算法的使用:假设有一个有向图,如下所示:```A ->B (1)A -> C (4)B ->C (2)B -> D (5)C ->D (1)C -> E (3)D ->E (4)```起始节点为A,我们希望找到到达其他节点的最短路径。

首先,初始化距离:A到A的距离为0,A到B/C/D/E的距离均为无穷大。

然后,将A加入优先队列。

从队列中取出A,更新A的邻居节点的距离。

信息学奥林匹克竞赛分类训练--选择题

信息学奥林匹克竞赛分类训练--选择题

霍山中学信息学奥林匹克竞赛分类训练(一)第一部分:选择题(30分=20*1.5)一般是比较容易得分的,不可错过!程序设计方面的知识多是平时计算机课堂教学或课外活动中学到的,建议大家找全国计算机等级考试(一、二级)的题目做做,一般不超过二级的知识点,知识要复习的系统一些。

新大纲和最近两年的考试不再考DOS,但有DOS经验的选手可能会占一点便宜,因为有些题目可以根据经验判断。

另外,往更高层次发展的过程中,必要的DOS知识和命令还是必须的。

类型1:计算机原理:NOIP1999:1、微机内的存储器的地址是以( )编址的。

A. 二进制位B. 字长C. 字节D. 微处理器的型号2、下列诸因素中,对微机工作影响最小的是 ( )A. 尘土B. 噪声C. 温度D. 湿度3、在24*24 点阵的字库中,汉字“一 ”与“编”的字模占用字节数分别是( )A. 32、32B. 32、72C. 72、72D. 72、327、计算机能直接执行的指令包括两部分,它们是( )A. 源操作数与目标操作数B. 操作码与操作数C. ASCⅡ码与汉字代码D. 数字与字符8、在微机中,通用寄存器的位数是 ( )A. 8位B. 16位C. 计算机字长D. 32位9、在计算机,字符编码通常采用( )A. 原码B. 反码C. ASCII码D. 补码13、已知小写字母“M”的十六进制的ASCⅡ码值是6D,则小写字母“C”的十六进制数的ASCⅡ码值是 ( )A. 98B. 62C. 99D. 6314、计算机中的数有浮点与定点数两种,其中用浮点数表示的数,通常由( )这两部分组成。

A. 指数与基数B. 尾数与小数C. 阶码与尾数D. 整数与小数16、启动计算机引导DOS是将操作系统 ( )A. 从磁盘调入中央处理器B. 从内存储器调入高速缓冲存储器C. 从软盘调入硬盘D. 从系统盘调入内存储器18、组成“教授”(JIAO SHOU),“副教授”(FU JIAO SHOU)与“讲师”(JIANG SHI)这三个词的汉字,在GB2312-80字符集中都是一级汉字,对这三个词排序的结果是( )A. 教授、副教授、讲师B.副教授、教授、讲师C.讲师、副教授、教授D. 副教授、讲师、教授19、不同的计算机,其指令系统也不相同,这主要取决于()A. 所用的操作系统B. 系统的总体结构C. 所用的 CPUD. 所用的程序设计语言NOIP2000:8.计算机系统总线上传送的信号有( )A.地址信号与控制信号B. 数据信号、控制信号与地址信号C.控制信号与数据信号D. 数据信号与地址信号9.计算机的运算速度取决于给定的时间内,它的处理器所能处理的数据量。

图灵奖获得者(2010修订版)

图灵奖获得者(2010修订版)

历届图灵奖获得者图灵奖获得者分类及各项指标统计(1966--2006)总共获奖人数(1966--2006):41届,51人。

获奖科学家国籍分布:美国: 36英国: 5以色列: 3加拿大: 2挪威: 2荷兰: 1瑞士: 1丹麦: 1图灵奖获得者最高学位分布:博士学位:39硕士学位:4学士学位:5无法了解: 3图灵奖获得者获奖时年龄分布:70-79(4): 70(Ole-Johan Dahl), 72(Douglas Engelbart), 75(Kristen Nygaard), 77(PeterNaur)60-69(7):61(Vinton Cerf), 62(John Cocke), 63(Alan Kay), 64(Fernando Corbato), 65(Juris Hartmanis), 68(Frederick P. Brooks), 68(Robert Kahn)50-59(19):50, 50, 50, 50, 51, 53, 53, 54, 54 (姚期智), 55, 55, 55, 56, 57, 57, 57, 58, 59, 5940-49(15):40, 42, 42, 42, 42, 43, 44, 44, 44, 45, 46, 47, 48, 49, 4930-39(2):36(Donald Knuth), 38(Robert E. Tarjan)Unknown(2): Richard E. Stearns, James N. Gray, Frances Allen图灵奖获得者去世人数(截止5/19/2006)统计:12获奖科学家研究方向分布:硬件,体系结构(2)Maurice V. Wilkes (1967) -- 第一台具有内部存储程序的计算机EDSACJohn Cocke (1987) -- RISC & 编译优化程序设计语言(10)Alan J. Perlis (1966) -- ALGOLEdsger Wybe Dijkstra (1972) -- ALGOLJohn W. Backus (1977) -- FORTRANKenneth Eugene Iverson (1979) -- APL程序语言Niklaus Wirth (1984) -- PASCALJohn Cocke (1987) -- RISC & 编译优化Ole-Johan Dahl,Kristen Nygaard (2001) -- Simula语言和面向对象概念Alan Kay(2003) -- SmallTalk语言和面向对象程序设计Peter Naur(2005) -- ALGOL60以及编译设计Frances Allen(2006) -- 编译优化形式语言, 程序语言语义(4)Robert W. Floyd (1978) -- 编程语言语义,自动程序验证C. Antony R. Hoare (1980) -- Hoare Logic, CSPRobin Milner (1991) -- LCF,ML,CCS,PI-calculusAmir Pnueli (1996) -- 时序逻辑和系统验证算法设计(10)Richard Hamming (1968) -- 汉明码James Hardy Wilkinson (1970) -- 数值分析Donald E. Knuth -- Art of Computer ProgrammingJohn E. Hopcroft,Robert Endre. Tarjan (1986) -- 数据结构和算法设计William (Velvel) Morton Kahan (1989) -- 浮点运算姚期智(Andrew Chi-Chih Yao) (2000) -- 伪随机数复杂性,密码系统和通讯复杂性Ronald L. Rivest, Adi Shamir, Leonard M. Adleman(2002) -- 公钥密码技术--RSA计算理论,自动机,计算复杂性(7)Dana Stewart Scott (1976) -- 自动机Michael Oser Rabin (1976) -- 自动机Stephen Arthur Cook (1982) -- NP完全性Richard Manning Karp (1985) -- 证明一个问题是否是属于NP完全Juris Hartmanis,Richard Edwin Stearns (1993) -- 计算复杂性Manuel Blum (1995) -- 计算复杂性,密码系统和程序检查验证人工智能(6)Marvin Lee Minsky (1969) -- 神经元网络John McCarthy (1971) -- LISPAllen Newell,Herbert Simon (1975) -- Logic Theory MachineRaj Reddy,Edward Feigenbaum(1994) -- 专家系统操作系统(4)Dennis MacAlistair Ritchie,Ken Thompson (1983) -- UNIX Fernando Jose Corbato (1990) -- 分时系统Frederick P. Brooks(1999) -- IBM System360 操作系统数据库(3)Charles W. Bachman (1973) -- 数据库Edgar Frank Codd (1981) -- 关系数据模型James Gray(1998) -- 数据库和事务处理图形技术和交互式系统(2)Ivan Edward Sutherland (1988) -- 图形技术,CADDouglas Engelbart(1998) -- 交互式系统,鼠标发明人网络通讯(2)Vinton Gray Cerf (2004) -- Internet TCP/IP协议Robert Kahn(2004) -- Internet分享人名:年份:目的:国籍:本科学校:研究生学校:研究方向:获奖年龄:贡献形式:地位:Herbert Simon1975表彰其在开始于与在RAND(兰德)公司的J. C. Shaw的合作,然后与Carnegie-Mellon Unviersity(CMU)的众多教授和学生的合作的二十多年的科学生涯中,他们在人工智能,认知科学,编目处理方面作出了(卓越的)基础研究。

2003年第九届奥林匹克分区联赛初赛试题(普及组)

2003年第九届奥林匹克分区联赛初赛试题(普及组)

●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一.选择一个正确答案代码(A/B/C/D/E),填入每题的括号内(每题1.5分,共30分) 1.下列计算机设备中,既是输入设备,又是输出设备的是( )。

A)键盘 B)触摸屏 C)扫描仪 D)投影仪 E)数字化仪2.下列分辨率的显示器所显示出的图像,最清晰的是( )。

A)800*600 B)1024*768 C)640*480 D)1280*1024 E)800*10003.下列说法中,正确的是( )。

A)在内存中,可执行程序用二进制码表示,源程序用八进制表示。

B)程序和数据在内存中都是用二进制码表示的。

C)内存中数据的存取是以二进制位为单位的。

D)中央处理器CPU执行的每条指令的长度都不同。

E)一般来说,在计算机内部,中文信息用十六进制表示,英文信息用八进制表示。

4.下列说法中,错误的是( )。

A)程序是指令的序列,它有三种结构:顺序、分支和循环。

B)地址总线决定了中央处理器CPU所能访问的最大内存空间的大小。

C)中央处理器CPU内部有寄存器组,用来存储数据。

D)不同厂家生产的CPU所能处理的指令集不一定相同。

E)数据传输过程中不可能会出错。

5.CPU访问内存的速度比访问下列哪个存储设备要慢( )。

A)寄存器 B)硬盘 C)软盘 D)磁带 E)光盘6.下列电子邮件地址,正确的是( )。

A)wang@ B)cai@jcc.pc.tool@.jpC)162.105.111.22 D)E)http://7.数字图像文件可以用下列哪个软件来编辑( )。

A)画笔(Paintbrush) B)记事簿(Notepad) C)RecorderD)WinRAR E)MidiSoft8.下列哪个软件不是操作系统软件的名字( )。

A)Windows XP B)DOS C)Linux D)OS/2 E)Arch/Info9.下列哪个不是个人计算机的硬件组成部分( )。

NOIP2012信息学奥林匹克竞赛初赛-模拟卷

NOIP2012信息学奥林匹克竞赛初赛-模拟卷

2012年全国青少年信息学奥林匹克联赛初赛模拟试题一.单项选择题(共10题,每题1.5分,共计15分,每题有且仅有一个正确答案。

)1、以下说法正确的是()A、第一个提出“goto语句有害论”的计算机科学家是Donald E.KnuthB、被誉为“迄今最伟大的计算机程序员、算法学家”的是Edsger Wybe DijkstraC、世界上第一位程序员是V on NoumaD、被誉为“计算机语言之母”的是Grace Hopper2、关于CPU的说法正确的是()A、计算机的运算速度取决于给定的时间内,它的处理器所能处理的数据量。

B、64位计算机指的是CPU每秒钟可处理的数据为2^64位。

C、双核CPU,是指在一个主板上放入两个CPU并行进行工作。

D、我国自主产权的CPU龙芯3A集成了两个处理器核心3、ASCII码表中的大写字母后有6个其它字符,接着便是小写字母。

现已知:A字母的ASCII码为(41)16{表示16进制数41 },那么f应为( )10A、46B、78C、102D、1084、Pascal的创始人是()。

(A)Donald E.Knuth (B)Steve Jobs (C)Charles Bachman D (D)Niklaus Wirth5、若二叉树的先序遍历序列为ABDECF,中序遍历序列DBEAFC,则其后序遍历序列为()A. DEBAFCB. DEFBCAC. DEBCFAD. DEBFCA6、已知后缀表达式abc+*d-,则它的中缀表达式和前缀表达式分别是:A) (a+b)*c-d -+*abcd B)a+b*c-d -+a*bcdC)a*(b+c)-d -*a+ bcd D)a*(b+c)-d -a b*+cd7、由权值为9,2,5,7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为()A.23B.37C.44D.468、排序算法是稳定的意思是:关键码相同的记录排序前后相对位置不发生改变,下列哪种排序算法是不稳定的:A) 冒泡排序 B) 插入排序 C) 归并排序 D) 快速排序9、下图给出了一个加权有向图,从顶点V1出发,以下哪个是活动中的关键路径()A. V1,V5,V3,V2B. V1,V4,V3,V2C. V1,V4, V2D. V1,V4,V5,V3,V210、以下有关全国信息学奥林匹克竞赛说法有误的是()A、 NOI评测只检查按照要求输出的结果,而不涉及过程和算法。

拜读一下计算机界牛人前辈们

拜读一下计算机界牛人前辈们

拜读一下计算机界牛人前辈们--转2010年08月13日星期五 10:44 P.M.Bill Joy, 前任Sun的首席科学家,当年在Berkeley时主持开发了最早版本的BSD。

他还是vi和csh的作者。

当然,Csh Programming Considered Harmful 是另一个话题乐。

据说他想看看自己能不能写个操作系统,就在三天里写了个自己的Unix, 也就是BSD的前身。

当然是传说了,但足见他的功力。

另一个传说是,1980年初的时候,DARPA让BBN在Berkley Unix里加上BBN开发的TCP/IP代码。

但当时还是研究生的B伯伯怒了,拒绝把BBN TCP/IP 加入BSD,因为他觉得BBN的TCP/IP写得不好。

于是B伯伯出手了,端的是一箭封喉,很快就写出了高性能的伯克利版TCP/IP。

当时BBN和DARPA签了巨额合同开发TCP/IP Stack,谁知他们的代码还不如一个研究生的好。

于是他们开会。

只见当时B伯伯穿个T-shirt出现在会议室(当时穿T-shirt不象现在,还是相当散漫的哈)。

只见BBN问:你怎么写出来的?而B伯伯答:简单,你读协议,然后编程就行了。

最令偶晕倒的是,B伯伯硕士毕业后决定到工业界发展,于是就到了当时只有一间办公室的Sun, 然后他就把Sparc设计出来乐。

象这种软硬通吃的牛人,想不佩服都不行的说。

据Bill Joy的同事说,一般开会的时候B伯伯总是拿一堆杂志漫不经心地读。

但往往在关键之处,B伯伯发言,直切要害,提出漂亮的构想,让同事们彻底崩溃。

对了,他还是Java Spec和JINI的主要作者之一。

John Carmack,ID Software的founder和Lead Programmer。

上个月和一个搞图形的师兄聊天,他竟然不知道John Carmack, 也让偶大大地晕了一把。

不过也许搞研究的和搞实战的多少有些隔吧。

想必喜欢第一人称射击游戏的都知道J哥哥。

计算机基本常识

计算机基本常识

1 、关于图灵机下面的说法哪个是正确的:A、图灵机是世界上最早的电子计算机。

B、由于大量使用磁带操作,图灵机运行速度很慢。

C、图灵机只是一个理论上的计算模型。

D、图灵机是英国人图灵发明的,在二战中为破译德军的密码发挥了重要作用。

答案(C)1. 在以下各项中,()不是操作系统软件。

A. SolarisB. LinuxC. SybaseD. Windows VistaE. Symbian2.微型计算机中,控制器的基本功能是()。

A. 控制机器各个部件协调工作B. 实现算术运算和逻辑运算C. 存储各种控制信息D. 获取外部信息E. 存放程序和数据11. 在下列关于图灵奖的说法中,正确的有()。

A. 图灵奖是美国计算机协会于1966年设立的,专门奖励那些对计算机事业作出重要贡献的个人B. 图灵奖有“计算机界诺贝尔奖”之称C. 迄今为止,还没有华裔计算机科学家获此殊荣D. 图灵奖的名称取自计算机科学的先驱、英国科学家阿兰•图灵12.计算机在工作过程中,若突然停电,()中的信息不会丢失。

A. 硬盘B. CPUC.ROMD. RAM20. 在下列防火墙(firewall)的说法中,正确的有()。

A. 防火墙是一项协助确保信息安全的设备,其会依照特定的规则,允许或是限制数据通过B. 防火墙可能是一台专属的硬件或是安装在一般硬件上的一套软件C. 网络层防火墙可以视为一种 IP 数据包过滤器,只允许符合特定规则的数据包通过,其余的一概禁止穿越防火墙D. 应用层防火墙是在 TCP/IP的“应用层”上工作,可以拦截进出某应用程序的所有数据包1、关于CPU下面哪些说法是正确的:A)CPU全称为中央处理器(或中央处理单元)。

B)CPU能直接运行机器语言。

C)CPU最早是由Intel公司发明的。

D)同样主频下,32位的CPU比16位的CPU运行速度快一倍。

答案(AB)2、关于计算机内存下面的说法哪些是正确的:A)随机存储器(RAM)的意思是当程序运行时,每次具体分配给程序的内存位置是随机而不确定的。

迪科斯彻算法

迪科斯彻算法

迪科斯彻算法迪科斯彻算法(Dijkstra)是由荷兰计算机科学家艾兹格·迪科斯彻(Edsger Wybe Dijkstra)发明的。

算法解决的是有向图中单个源点到其他顶点的最短路径问题。

举例来说,如果图中的顶点表⽰城市,⽽边上的权重表⽰著城市间开车⾏经的距离,迪科斯彻算法可以⽤来找到两个城市之间的最短路径。

迪科斯彻算法的输⼊包含了⼀个有权重的有向图 G,以及G中的⼀个来源顶点 S。

我们以 V 表⽰ G 中所有顶点的集合。

每⼀个图中的边,都是两个顶点所形成的有序元素对。

(u, v) 表⽰从顶点u 到 v 有路径相连。

我们以 E 所有边的集合,⽽边的权重则由权重函数 w: E → [0, ∞] 定义。

因此,w(u, v) 就是从顶点 u 到顶点 v 的⾮负花费值(cost)。

边的花费可以想像成两个顶点之间的距离。

任两点间路径的花费值,就是该路径上所有边的花费值总和。

已知有 V 中有顶点 s 及 t,Dijkstra 算法可以找到 s 到 t 的最低花费路径(例如,最短路径)。

这个算法也可以在⼀个图中,找到从⼀个顶点 s 到任何其他顶点的最短路径。

算法描述这个算法是通过为每个顶点 v 保留⽬前为⽌所找到的从s到v的最短路径来⼯作的。

初始时,原点 s 的路径长度值被赋为 0 (d[s] = 0),同时把所有其他顶点的路径长度设为⽆穷⼤,即表⽰我们不知道任何通向这些顶点的路径(对于 V 中所有顶点 v 除 s 外d[v] = ∞)。

当算法结束时,d[v] 中储存的便是从 s 到 v 的最短路径,或者如果路径不存在的话是⽆穷⼤。

Dijkstra 算法的基础操作是边的拓展:如果存在⼀条从 u 到 v 的边,那么从 s 到 v 的最短路径可以通过将边(u, v)添加到尾部来拓展⼀条从 s 到 u 的路径。

这条路径的长度是 d[u] + w(u, v)。

如果这个值⽐⽬前已知的 d[v] 的值要⼩,我们可以⽤新值来替代当前 d[v] 中的值。

计算机软硬件知识100题

计算机软硬件知识100题

计算机软硬件知识一、单选题:1 、一个计算机系统通常是指( d )。

(A)硬件和固件(B)计算机的CPU(C)计算机的硬件(D)计算机的硬件系统和软件系统2、计算机的cpu包括( A )A、运算器和控制器B、运算器、控制器和硬磁盘存储器C、CPU 和内存储器D、CPU和键盘3、( A )合起来叫做外围设备。

A. 输入、输出设备B. 打印机、键盘和显示器C. 驱动器、打印机、键盘和显示器D. A和B4、输入/输出设备是人与计算机联系的接口,用户可以通过它与计算机交换( B)。

A. 思想B. 信息C. 软件D. 程序5、计算机的显示器属于( B )。

A. A. 输入设备B. 输出设备C. 输入输出设备6、CPU是(B)A.内存 B 处理器 C 输入设备 D 输入出设备7、RAM是(B)A 光盘B 随机存储器C 中央处理器D 只读存储器8、下列设备中,既能输入向主机输入信息又能接受主机输出信息的设备是( B )。

A)鼠标(B)存储器(C)键盘(D)显示器9、在下列各种计算机配件中,( A )是典型的多媒体设备。

(A)声卡(B)CD-ROM (C)硬盘(D)5.25英寸软盘10、下列存储器中,存储速度最快的是( D )A、软磁盘B、硬磁盘C、光盘D、内存11、一个字节是( B )。

(A)4个二进制位(B)8个二进制位(C)16个二进制位(D)32个二进制位12、字节是计算机科学中的一个常用单位,它的英文表达式是( B )。

(A)bit (B)byte (C)bout (D)baud13、在下列式子中,正确的是( A )。

(A)1KB=1024B,1MB=1024KB (B)1KB=1024B,1MB=1000KB(C)1KB=1000B,1MB=1024KB (D)1KB=1000B,1MB=1000KB14、一张1.44M的软盘大约可以保存___B__个汉字字符。

A.A.144万 B. 72万 C. 1024 D. 12.5亿15、在计算机中,一个汉字占__B___ 西文字符长度。

计算机世界最具影响力的20人

计算机世界最具影响力的20人

转自:/content/1167588计算机世界最具影响力的20人1、约翰•冯•诺依曼 (John Von Neuman, 1903- 1957)被誉为“电子计算机之父”。

他对人类的最大贡献是对计算机科学、计算机技术和数值分析的开拓性工作,1946 年发明电子计算机。

约翰·冯·诺依曼 ( John Von Nouma,1903-1957),美藉匈牙利人,1903年12月28日生于匈牙利的布达佩斯,父亲是一个银行家,家境富裕,十分注意对孩子的教育。

冯·诺依曼从小聪颖过人,兴趣广泛,读书过目不忘。

据说他6岁时就能用古希腊语同父亲闲谈,一生掌握了七种语言。

最擅德语,可在他用德语思考种种设想时,又能以阅读的速度译成英语。

他对读过的书籍和论文。

能很快一句不差地将内容复述出来,而且若干年之后,仍可如此。

1911年一1921年,冯·诺依曼在布达佩斯的卢瑟伦中学读书期间,就崭露头角而深受老师的器重。

在费克特老师的个别指导下并合作发表了第一篇数学论文,此时冯·诺依曼还不到18岁。

1921年一1923年在苏黎世大学学习。

很快又在1926年以优异的成绩获得了布达佩斯大学数学博士学位,此时冯·诺依曼年仅22岁。

1927年一1929年冯·诺依曼相继在柏林大学和汉堡大学担任数学讲师。

1930年接受了普林斯顿大学客座教授的职位,西渡美国。

1931年成为该校终身教授。

1933年转到该校的高级研究所,成为最初六位教授之一,并在那里工作了一生。

冯·诺依曼是普林斯顿大学、宾夕法尼亚大学、哈佛大学、伊斯坦堡大学、马里兰大学、哥伦比亚大学和慕尼黑高等技术学院等校的荣誉博士。

他是美国国家科学院、秘鲁国立自然科学院和意大利国立林且学院等院的院土。

1954年他任美国原子能委员会委员;1951年至1953年任美国数学会主席。

1954年夏,冯·诺依曼被使现患有癌症,1957年2月8日,在华盛顿去世,终年54岁。

迪杰斯特拉在计算机领域的贡献

迪杰斯特拉在计算机领域的贡献

迪杰斯特拉在计算机领域的贡献计算机科学作为一门新兴的学科,正日益深入人们的生活,并且对人类社会的发展起着至关重要的作用。

在计算机科学的发展过程中,许多科学家和工程师做出了巨大的贡献,其中迪杰斯特拉(Edsger Dijkstra)无疑是其中的一位杰出代表。

迪杰斯特拉不仅在学术界享有盛誉,而且他的工作对计算机科学的发展做出了重要的贡献。

本文将从他的贡献和影响两个方面来介绍迪杰斯特拉在计算机领域的重要作用。

迪杰斯特拉是计算机科学中一个伟大的思想家和数学家,他在算法和程序设计领域的贡献被广泛认可。

他提出了许多重要的算法和方法,其中最著名的就是迪杰斯特拉算法。

迪杰斯特拉算法是一种用于解决图中单源最短路径问题的算法,它在计算机网络和路由算法中得到了广泛应用。

迪杰斯特拉算法通过动态规划的思想,找出了从图中一个顶点到其他所有顶点的最短路径,并将其应用于实际问题中。

这种算法的提出,极大地提高了计算机网络的效率,使得网络中的数据传输更加快速和稳定。

除了迪杰斯特拉算法,迪杰斯特拉还在程序设计的领域做出了重要的贡献。

他提出了“结构化程序设计”的概念,强调程序应该具有良好的结构和逻辑,以提高程序的可读性和可维护性。

迪杰斯特拉认为,程序设计应该像数学证明一样严谨,每一步都应该有明确的目的和推理过程。

他的观点对程序设计的发展产生了重要影响,为后来的软件工程师提供了宝贵的指导。

迪杰斯特拉还对计算机科学的教育做出了重要贡献。

他提倡培养学生的抽象思维能力和问题解决能力,鼓励他们独立思考和创新。

他认为,计算机科学教育不应该仅仅关注具体的编程技术,而应该注重培养学生的计算思维和算法思维能力。

迪杰斯特拉的教育理念对于培养计算机科学人才具有重要的指导意义,为计算机科学教育的改革提供了有益的借鉴。

迪杰斯特拉在计算机科学领域的贡献不仅体现在他的学术成果上,还体现在他对计算机科学发展的影响力上。

他的思想和观点对于整个计算机科学界产生了深远的影响,激发了许多科学家和工程师的研究热情。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

悼念伟大的计算机科学家Edsger Wybe Dijkstra悼念伟大的计算机科学家Edsger Wybe Dijkstra2002年8月8日,我象往常一样查看自己在extremeprogramming电子小组上订阅的newsletter。

突然看到这个小组上的稀客、OO教父Grady Booch的发言,题目是Dijkstra。

我以为大家在讨论Dijkstra教授提出的什么难题,定睛一看,才知道是一篇类似生平介绍式的讣告——在与癌症进行了多年的斗争之后,伟大的荷兰计算机科学家Edsger Wybe Dijkstra已经于2002年8月6日在荷兰Nuenen自己的家中与世长辞!终年72岁。

原来如此!这个Dijkstra,就是那个提出&#8220;goto有害论&#8221;的Dijkstra,就是那个提出信号量和PV原语,解决了有趣的&#8220;哲学家聚餐&#8221;问题的Dijkstra,那个Dijkstra最短路径算法的创造者,第一个Algol 60编译器的设计者和实现者,THE操作系统的设计者和开发者,那个与D. E. Knuth并称为我们这个时代最伟大的计算机科学家的人。

阿兰图灵的自杀是在办个世纪之前,冯诺依曼去世也已经多年,作为这个相对新兴的行当中的从业者,我们似乎已经很习惯于从相信,从书上读到的每个名字都是仍然在世的活生生的人,都是我们这个时代的骄傲。

无论是仍然健硕的D. E. Knuth,Fred Brooks,Dennis Ritchie, Ken Thompson, Brian Kernighan, 还是正当盛年的Bjarne Stroustrup,Grady Booch,Steve McConnell, Andy Koenig, Robert Martin, Kent Becker, Martin Fowler, James Gosling, 再或者是青春年少,意气风发的Linus Trovalds,Andrei Alexandrescu,我们似乎都习惯于认为,只要一封email,这些书本上的名字就会立刻成为你的朋友。

Internet把地球变成了一个大村庄,每个人的距离都那么的近。

但是可惜,Internet却无法缩短跨越生与死的冥界。

今天,一颗真正的巨星在我们的眼前陨落!作为一名普通的程序员,我从内心感到惋惜和悲痛。

这种悲痛,两年半前在我最初得知Richard Stevens的逝世时,也曾感受过,然而却不如今天来得这么强烈。

毕竟,当我对编程还是懵懵懂懂的时候,就知道有个叫Dijkstra的人劝告大家不要滥用goto,而在那之前,goto在我看来就是编程的全部奥秘所在。

之后我在学习算法、数据结构、操作系统等课程的时候,Dijkstra这个名字一次又一次从书里跳出来,我对于这个名字的崇敬也越来越深。

我知道他晚年疯狂的迷恋C++,这也几乎是我这个C++ Fan所能感受到的最大荣幸。

我曾想过,有朝一日,我会给他写一封email,什么也不说,只想表达我个人对他的感谢和敬意。

没想到,如今连这个机会也没有了!Dijkstra引导了并且将继续引导这个星球上所有的程序员,他的贡献和影响将与世长存,让我们祝他安息!【附】Grady Booch对Dijkstra的介绍&gt; Professor Edsger Wybe Dijkstra, a noted pioneer of the science and&gt; industry of computing, died after a long struggle with cancer on 6&gt; August 2002 at his home in Nuenen, the Netherlands.&gt;&gt; Dijkstra was born in 1930 in Rotterdam, The Netherlands, the son of a&gt; chemist father and a mathematician mother. He graduated from the&gt; Gymnasium Erasmianum in Rotterdam and obtained degrees in mathematics&gt; and theoretical physics from the University of Leyden and a Ph.D. in&gt; computing science from the University of Amsterdam. He worked as a&gt; programmer at the Mathematisch Centrum, Amsterdam, 1952-62; was&gt; professor of mathematics, Eindhoven University ofTechnology,&gt; 1962-1984; and was a Burroughs Corporation research fellow, 1973-1984.&gt; He held the Schlumberger Centennial Chair in Computing Sciences at the&gt; University of Texas at Austin, 1984-1999, and retired as Professor&gt; Emeritus in 1999.&gt;&gt; Dijkstra is survived by his wife of over forty years, Maria (Ria) C.&gt; Dijkstra Debets, by three children, Marcus J., Femke E., and computer&gt; scientist Rutger M. Dijkstra, and by two grandchildren.&gt;&gt; Dijkstra was the 1972 recipient of the ACM Turing Award, often viewed&gt; as the Nobel Prize for computing. He was a member of the Netherlands&gt; Royal Academy of Arts and Sciences, a member of the American Academy&gt; of Arts and Sciences, and a Distinguished Fellow of theBritish&gt; Computer Society. He received the 1974 AFIPS Harry Goode Award, the&gt; 1982 IEEE Computer Pioneer Award, and the 1989 ACM SIGCSE Award for&gt; Outstanding Contributions to Computer Science Education. Athens&gt; University of Economics awarded him an honorary doctorate in 2001. In&gt; 2002, the C&amp;C Foundation of Japan recognized Dijkstra "for his&gt; pioneering contributions to the establishment of the scientific basis&gt; for computer software through creative research in basic software&gt; theory, algorithm theory, structured programming, and semaphores".&gt;&gt; Dijkstra is renowned for the insight that mathematical logic is and&gt; must be the basis for sensible computer program construction and for&gt; his contributions to mathematical methodology. He is responsible for&gt; the idea of building operating systems as explicitly synchronized&gt; sequential processes, for the formal development of computer programs,&gt; and for the intellectual foundations for the disciplined control of&gt; nondeterminacy. He is well known for his amazingly efficient shortest&gt; path algorithm and for having designed and coded the first Algol 60&gt; compiler. He was famously the leader in the abolition of the GOTO&gt; statement from programming.&gt;&gt; Dijkstra was a prodigious writer. His entire collection of over&gt; thirteen hundred written works was digitally scanned and is accessible&gt; at /users/EWD. He also corresponded regularly&gt; with hundreds of friends and colleagues over the years--not by email&gt; but by conventional post. He strenuously preferred the fountain pen to&gt; the computer in producing his scholarly output and letters. &gt;&gt; Dijkstra was notorious for his wit, eloquence, and way with words,&gt; such as in his remark "The question of whether computers can think is&gt; like the question of whether submarines can swim"; his advice to a&gt; promising researcher, who asked how to select a topic for research:&gt; "Do only what only you can do"; and his remark in his Turing Award&gt; lecture "In their capacity as a tool, computers will be but a ripple&gt; on the surface of our culture. In their capacity as intellectual&gt; challenge, they are without precedent in the cultural history of&gt; mankind."&gt;&gt; Dijkstra enriched the language of computing with many concepts and&gt; phrases, such as structured programming, separation of concerns,&gt; synchronization, deadly embrace, dining philosophers, weakest&gt; precondition, guarded command, the excluded miracle, and the famous&gt; "semaphores" for controlling computer processes. The Oxford English&gt; Dictionary cites his use of the words "vector" and "stack" in a&gt; computing context.&gt;&gt; Dijkstra enjoyed playing Mozart for his friends on his Boesendorfer&gt; piano. He and his wife had a fondness for exploring state and national&gt; parks in their V olkswagen bus, dubbed the Touring Machine, in which he&gt; wrote many technical papers.&gt;&gt; Throughout his scientific career, Dijkstra formulated and pursued the&gt; highest academic ideals of scientific rigour untainted by commercial,&gt; managerial, or political considerations. Simplicity, beauty, and&gt; eloquence were his hallmarks, and his uncompromising insistence on&gt; elegance in programming and mathematics was an inspiration to&gt; thousands. He judged his own work by the highest standards and set a&gt; continuing challenge to his many friends to do the same. For the rest,&gt; he willingly undertook the role of Socrates, that of a gadfly to&gt; society, repeatedly goading his native and his adoptive country by&gt; remarking on the mistakes inherent in fashionable ideas and the&gt; dangers of time-serving compromises. Like Socrates, his most&gt; significant legacy is to those who engaged with him in small group&gt; discussions or scientific correspondence abouthalf-formulated ideas&gt; and emerging discoveries. Particularly privileged are those who&gt; attended his reading groups in Eindhoven and Austin, known as the&gt; "Tuesday Afternoon Clubs".&gt;&gt; At Dijkstra's passage, let us recall Phaedo's parting remark about&gt; Socrates: "we may truly say that of all the men of his time whom we&gt; have known, he was the wisest and justest and best." Edsger Dijkstra经典言论1. 编程的艺术就是处理复杂性的艺术。

相关文档
最新文档