计算机专业学生收藏,翻一页就上头,在吴军博士这本新书里有!

人邮异步社区 2023-02-16 16:39:12

如果论国内科技领域最有影响力的作家,吴军博士肯定位列其一。《浪潮之巅》《数学之美》是许多学生、程序员,甚至是IT相关行业人群的心头之好,激发了无数人对计算机的兴趣。

作为计算科学家,吴军在取得计算机博士学位后,在谷歌、腾讯有着近三十年的从业经验,对包括算法、系统结构在内的计算机科学精髓有着深入、结合实践的理解。

为了计算机从业者能突破领域的天花板,同时坚定在这个领域长期发展的信心,带来了又一本与《浪潮之巅》《数学之美》顶峰相会的硬核书籍——《计算之魂》!

深刻+有趣+有料!程序员恨不得翻看100遍的计算思维修炼之道,终于来了!

 购买链接:https://item.jd.com/13515688.html

一同进行计算科学品位和认知进阶!

 

就像《数学之美》《浪潮之巅》一样,《计算之魂》又是一本集大成之作。全书通过算法例题来阐述计算思维之妙,其中蕴含的思想将我们引领进了另一个角度的世界,让我们流连忘返。

捧读吴军博士在科技领域的重磅新作《计算之魂》,不由的为递归思想将大问题不断拆成小问题、逆向思考的哲理拍案叫绝,为基于集群的高性能并行计算平台MapReduce利用分治思想化繁为简的智慧首肯心折。

随着书页的翻动,又再一次被计算思维的魅力所折服。 

 

01

人皆知有用之用,却不知无用之用也 

 

初入大学时,我们在懵懵懂懂之中上了计算机科学导论课,震撼于计算机历史长河中的成就,折服于前人的思想。可是毕业后,计算机科学背后的本质思想在工作中好像没有什么实际用处。知乎上还有很多人说计算机科学导论就是一门水课

我们甚至还会调侃“学习计算科学导论又有什么用呢?现在主要是计算机技术的运用,会写代码,会用工具不一样也能解决很多计算机问题吗?”

然而,真的没有用吗?

 

亚伯拉罕·弗莱克斯纳曾在《无用知识的有用性》中写道:

“人们不断地重复说:我们的时代是一个物质主义时代。在这个物质主义时代,人们更关注物质利益的广泛分配和世俗机会,因此使不断增多的学子离开他们父辈所从事的研究而转向同样重要的和紧迫的社会问题、经济问题等等的研究。我与这种倾向并无争议。我们生活的世界是我们感觉唯一能证实的世界。除非将它改造成一个较好的世界,一个较理想的世界,否则无数的人将继续安静地、忧伤地、痛苦地走向他们的坟墓。现在,我有时纳闷,如果这个世界缺乏某些可赋予它精神上具有重要性的“无用之物”,是否能给人的整个一生都提供足够的机会?换句话说,我们关于“有用之物”的概念是否已变得太狭窄,以致不足以适应人类精神的游荡和变幻莫测的可能。”

 

有时,我们真的对知识的有用性的认识过于狭隘和短视了。

在《计算之魂》书中,那些短期看上去“无用”的知识,长期上却拥有着巨大的有用性。

乔治·布尔通过二进制将算术和简单的数理逻辑统一起来,给计算机的控制带来了巨大的灵活性。

克劳德·香农从理论上指出任何逻辑控制和计算都和开关电路等价,奠定了今天数字电路设计的基础。

艾伦·图灵提出了计算机的数学模型——图灵机,从数学上奠定了可计算性问题的理论基础。

......

像布尔、香农、图灵等人,他们可以在没有具体应用或结果的情况下,追随自己的想法做事。在计算机领域,对这些“无用”满足感的追求成就了无数做梦也想象不到的“用处”。

今天,我们必须面对这样一个现实无论程序员还是其他人,人们总喜欢先问“有用”、“无用”。比如选课前喜欢问这课有什么用?对面试和找工作有用吗?学习计算科学导论有用吗?培养计算思维有用吗?这门新的计算机技术有用吗?......

我们都在追求立竿见影式的“有用”。

但你说计算机科学是无用知识吗?这也不尽然。

一是因为计算机科学是一门正在发展中的知识学科,方法也都在持续改进中,在长期上具有巨大作用。

二是因为我们还没拥有计算思维,不会在工作、学习和生活中利用它,而产生的错觉。倘若我们领悟了计算思维之道,就能知道什么才是真正的“有用”了。

 

挣脱眼界的束缚,跨越时空的局限,吴军博士用媲美文学作品的语言,结合计算机发展的历史和谷歌等大公司的一手案例,论今说古,在书中系统地讲述了计算机科学领域最重要的理论和知识,全面论述计算机科学特色。

这一切,让我们惊喜地看到计算思维是如何在历史的长河里不时提点世人,体会计算机科学的精髓所在!

人皆知有用之用,却不知无用之用也。而这恐怕也是普通码农和计算机科学家的区别所在。

 

02

算法,是计算思维的最佳演绎方式

 

有的同学会问:计算思维好像挺抽象的,我该怎么培养?

李开复曾说:“真正学懂计算机的人(不只是‘编程匠’)都对数学有相当的造诣,既能用科学家的严谨思维来求证,也能用工程师的务实手段来解决问题——而这种思维和手段的最佳演绎就是‘算法’。

在《计算之魂》这本书中,吴军博士将计算思维归纳成递归、编码、分类、组合、图论、分治、存储、并行、状态、随机等关键思想,把计算机和算法的精髓都囊括在内。计算思维的魔力能使我们从“依葫芦画瓢”的工程师步步晋级,成为真正懂得算法精髓的工程师!

 

吴军博士过去在Google和腾讯指导过的很多年轻人,他们在走出学校后不长的时间内,通过逐渐领悟计算思维,如今都成了许多知名IT企业的创始人和主要的技术负责人。

相信无论我们是处于初出茅庐的七级工程师层次,还是崭露头角的六级工程师层次,只要读懂《计算之魂》,按照正确的方法做事情,不断训练自己,也能获得重复性的成功。

 

六级:能在他人指导下完成计算机工程师的工作,那些水平还不错的大学的计算机专业硕士毕业生,或者在一流计算机公司里工作过半年、过了见习期的新人,大约就是这个水平。

七级:本科毕业自水平不错的大学的计算机专业,但没有参加过六个月以上实习的学生,也就是说课程的内容都学过了,就能达到这个水平。当然,从小就接触编程的计算机天才,他们可能在高中就达到了这个水平。

——《计算之魂》

 

比如,吴军博士认为计算思维的核心是递归——逆向思考。在工作中从人的正向思维方式“递推”转换成计算思维,其中最重要的是一种自顶向下、先全局后局部的逆向思维方式,即递归的思想。

做到这一点,就有成为四级工程师的可能性。虽然递推很符合我们认识世界的方式,而递归需要倒着想,很不直观,但很多问题只有倒着才能想清楚。

为了能直观地感受递归的思想,作者选取了抢20、上台阶、汉诺塔、八皇后等问题进行剖析,更容易理解计算思维自顶向下,先全局、后局部,逐步分解的思想,以及以相同方式处理大问题和小问题的巧妙。

再比如,编码是计算机科学的基础。编码其实早在电子计算机被发明前就有了,比如说文字就是对信息的一种编码,数字、我们的名字、街道的名称、化学符号、数学方程等都是编码。

但人们在生活中使用的编码很少考虑重名现象,而且是从具体到抽象慢慢地演变来的。

计算机编码从设计之初就是为了区分不同的对象,因此站到计算机的角度来设计编码,要善于建立起一座桥梁,实现那些计算机内部抽象编码和人能理解的形象编码之间的一一对应关系。

分割黄金问题、小白鼠试验问题、两个玻璃球问题都是面试常考题,并不是为了测智力,而是考察面试者是否具有计算思维,是否理解计算机编码。再往外延,数据的表示、音视频信息压缩、矩阵的表示都涉及编码。

嗯,这些知识点可能之前都学过,但《计算之魂》把他们非常灵巧地组织在了一个章节中,对计算机编码思想的理解豁然开朗。

 

吴军博士多次提及的五级工程师划分在这本新书里可谓是进行了深度的讲解,很多例题还给出了不同层级的参考。

比如,对于计算机编码,如果我们只会使用开源代码库的代码,可能还没有达到五级工程师的水平,因为能够看懂代码是这一级工程师的基本要求;能够理解编码算法的原理,是四级工程师的要求;如果我们想达到三级工程师的水平,就需要根据情况修改那些标准的编码,在特定情况下将其性能提高一个数量级,或至少能提高几倍。

 

此外,诸如

智能的本质——分类与组合;

工具与算法——图论及应用;

化繁为简——分治思想及应用;

权衡时空——理解存储;

并行与串行——流水线和分布式计算;

状态与流程——等价性与因果关系;

确定与随机——概率算法及应用;

 

这些关键的计算思维,都值得我们细细领悟。只有沿着正确的方向,经过不断递进的练习,见识逾大,思考逾深,才能完成一次次质的飞跃。

 

 

吴军博士通过通俗易懂的语言描述,在书中淋漓再现了计算思维所包含的关键思想的源起、发展和应用,并且通过美国顶级计算机公司(包括苹果、亚马逊、微软、Facebook、领英、IBM、雅虎、优步、英特尔、甲骨文等)和金融企业的面试题讲透计算机科学的艺术和精髓。

在他的笔下,算法不再是我们一般认为的枯燥的公式、复杂的逻辑和推理,而是实实在在能解决世界上各种问题的智慧源泉。通过这些具体的例子,我们可以从“术”的层面,获得“道”的层面的提升。

 

03

计算之魂,运用之妙,存乎一心

 

中国工程院院士,清华大学计算机系教授郑纬民对《计算之魂》作序道:

“计算机科学是20世纪40年代以来发展最快、影响力最大的学科之一,也是许多国家大学生首选的专业。一个计算机专业的从业者,从大学生开始,到成为一般的从业人员,再到专家学者,最后能走多远,在很大程度上取决于他/她在计算机科学领域的素养。这些素养既包括对计算机科学本身的理解,也包括利用计算机软硬件知识来解决现实世界问题的能力。”

 

是的,只有把握了计算机科学的精髓,修炼计算思维之道,才能更快地成为计算机领域顶尖人才。《计算之魂》这本书对于我们而言,尤其是计算机类专业学生,具有拨云见日的作用!

并且,现在的计算机科学不仅仅是能有新的开创成果的领域,也是其他领域必不可少的“工具”,更是我们认识未知世界的知识源泉之一。在计算机与我们越来越紧密的今天,计算思维不可或缺,算法的运用也像空气一样无所不在、无时不有。

从我们每天打开手机、平板或者电脑等电子设备开始,一系列算法就已经悄然开始运行了。

调度算法,让我们能顺畅地使用操作系统;

网络连接所隐含的相关算法,让我们能够联通全世界,纵览全球信息。

搜索引擎的相关算法,让我们通过简单的关键字就可以在毫秒级别的时间获得数以亿计的信息,并且按照优先级排列浏览;

图形的渲染流程中诸如光栅化算法等相关算法,让我们能轻松阅读网页,而不是程序员才懂得html、css和js文本;

淘宝、京东等的推荐算法,让我们刷得停不下来,每次推荐都是我们的梦中情物;

遗传算法,让我们的课程安排表更为合理;

图的Dijkstra和Floyd等算法,让我们能够使用各种地图软件选择最短路径导航到目的地;

深度神经网络算法,让外卖最快地送到我们手上;

......

算法无处不在。

计算思维成了当今世界的又一重要方法论。

人工智能的先驱之一、Logo语言发明者之一西摩佩珀特曾说“计算机提供了一种非常具象的、实实在在的、特别的思考方式,它让我们更容易理解‘思考方式’究竟是怎么一回事。”

用计算之魂来思考学习的问题,是一种有力和便捷的道路。与时俱进的我们,应当拿起这本凝聚计算科学精髓的《计算之魂》,洞见一个个算法背后的计算思维本质。

计算之魂,运用之妙,存乎一心。

 

购买链接:https://item.jd.com/13515688.html

 

跟随吴军老师一起

感受计算科学的精髓和计算思维之妙

从底层逻辑上思考算法、掌握算法本质

点击图片,把《计算之魂》带回家

一同进行计算科学品位和认知进阶吧~

 

文章编辑:罗梦婷、刘鑫   审校:刘鑫

参考来源:

异步社区

《计算之魂》推荐词、前言、第1章、第2章、第3章、第5章、第7章 

...全文
207 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

263

社区成员

发帖
与我相关
我的任务
社区描述
作者在书中结合自己对计算机工程师的五级分级标准,详细讲解了不同层次的解决方法、思考深度,深度阐述题目背后的计算机科学精髓。
算法人工智能青少年编程 个人社区
社区管理员
  • SoftwareTeacher
  • 高博
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧