荷兰计算机科学家Dijkstra

荷兰计算机科学家DijkstraDilkstra 全名为 EdfgerWybeDi 曾在 1972 因年获得计算机领域最高荣誉图灵奖 大部分中国的程序员能记住这个名字 很大程度是因为学过图论里计算最短路径的 Dijkstra 算法 然而 大部分的人都难以记住其名字正确的拼写 因为他是荷兰人 名字不符合英文发音 我一般都叫他迪杰斯特拉 也不知对不对 现在我们来回顾一下顺便复习一下他最有名的迪杰斯特拉算法 for int

Dilkstra全名为Edfger Wybe Dijkstra,曾在1972因年获得计算机领域最高荣誉图灵奖。

这里写图片描述

现在我们来回顾一下顺便复习一下他最有名的迪杰斯特拉算法。

for(int i=1;i<n;i++){  min=inf; for(int j=1;j 
      if(book[j]==0&&dis[j] 
      min=dis[j]; rec=j; } } book[rec]=1; for(int k=1;k 
      if(book[k]==0&&a[rec][k] 
     
       > 
     dis[rec]+a[rec][k]){  dis[k]=dis[rec]+a[rec][k];  }  } }

其算法核心我觉得是用贪心和松弛操作。

这个算法有个有趣的背景,在一台新的叫 ARMAC 的计算机发布之前,Dijkstra 需要想出一个可以让不懂数学的媒体和公众理解的问题,以便向他们展示。有一天他和未婚妻在阿姆斯特丹购物,他们停下来在一家咖啡店的阳台上喝咖啡休息,他开始思考这个问题。他觉得可以让计算机演示如何计算荷兰两个城市间的最短路径,这样问题和答案都容易被人理解。于是他在 20 分钟内想出了高效计算最短路径的方法。Dijkstra 自己也没有想到这个 20 分钟的发明会成为他最著名的成就之一,并且会被以他的名字命名为 Djikstra 算法。

虽然很多计算机软件都是Dijkstra发明的,但他却很少使用计算机,他一般只用来回复电子邮件和浏览网页。他也不用计算机写论文,他喜欢用万宝龙钢笔写论文和文章。

他一生中写了1300多篇文章,他用自己姓名的首字母 EWD 给他们编号:EWD 1, EWD 2, … EWD 1318。在计算机科学中,这些文章被统称为「EWD 报告」。

他的算法和文章大都让人感受到简洁、经济、优雅,或许这也与他的生活习惯和性格有一定的关系。

他贡献无数,致力于计算机理论的发展,在20世纪计算机科学的发展前途尚处在萌芽阶段,Dijkstra能够洞穿其发展大胆预测,致力于理论和应用的研究,其远见与智慧不得不令人惊叹,而且他对计算机的执着和他自身的人格魅力,也令我们折服。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177263.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午7:55
下一篇 2026年3月26日 下午7:56


相关推荐

  • menuconfig过程详解

    menuconfig过程详解makefilemenuconfig过程讲解当我们在执行makemenuconfig这个命令时,系统到底帮我们做了哪些工作呢?这里面一共涉及到了一下几个文件我们来一一讲解Linux内核根目录下的scripts文件夹arch/$ARCH/Kconfig文件、各层目录下的Kconfig文件Linux内核根目录下的makefile文件、各层目录下的make

    2022年5月29日
    134
  • .gitkeep

    .gitkeep

    2021年10月20日
    71
  • appscan激活成功教程版安装_appscan许可证管理在哪

    appscan激活成功教程版安装_appscan许可证管理在哪AppScan 是一个Web漏洞扫描程序,主要适用于Windows系统。该软件内置强大的扫描引擎,可以测试和评估Web服务和应用程序的风险检查,有助于防止破坏性的安全漏洞。1、安装实践环境

    2022年8月1日
    29
  • win10中修改mac地址(总有一款适合你)

    win10中修改mac地址(总有一款适合你)我的解决办法如下:先上图:下面转自:Win10秘笈:两种方式修改网卡物理地址(MAC)https://www.ithome.com/html/win10/244510.htm在修改之前,可以先确定一下要修改的网卡MAC地址,查询方法有很多种,比如:1、在设置→网络和Internet→WLAN/以太网,如下图——2、在控制

    2022年5月12日
    86
  • 2019最新 JAVA架构师系列课程分布式缓存技术Redis权威指南[通俗易懂]

    2019最新 JAVA架构师系列课程分布式缓存技术Redis权威指南[通俗易懂]课程目标本课程从0基础开始,对redis的方方面面进行细粒度的讲解:包括基础操作、高级命令、各种集群模式、动态增减节点,结合lua使用,实现抢红包等应用场景。适用人群java程序员、技术主管、架构师、技术总监课程简介基础部分:1.xNOSQL(Redis)简介、Redis安装部署与可视化工具使用2.xRedis基础数据类型详解结合实际工作使用3.xRedis高级命令、Redis与java的使…

    2025年6月7日
    4
  • JLINK V9项目启动【jlink接口定义】【开启VCOM(虚拟串口)功能】「建议收藏」

    JLINK V9项目启动【jlink接口定义】【开启VCOM(虚拟串口)功能】「建议收藏」jlink接口定义摘录于:https://blog.csdn.net/u014124220/article/details/50829713仿真器端口 连接目标板 备注 1.VCC MCU电源VCC VCC 2.VCC MCU电源VCC VCC 3.TRST TRST Tes…

    2022年5月28日
    257

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号