文章吧-经典好文章在线阅读:《程序员的数学》经典读后感10篇

当前的位置:文章吧 > 经典文章 > 读后感 >

《程序员的数学》经典读后感10篇

2022-05-17 02:08:49 来源:文章吧 阅读:载入中…

《程序员的数学》经典读后感10篇

  《程序员的数学》是一本由结城浩著作,人民邮电出版社出版的平装图书,本书定价:49.00元,页数:232,特精心从网络上整理的一些读者的读后感,希望对大家能有帮助。

  《程序员的数学》读后感(一):图灵出版社的《程序员的数学》

  [日] 结城浩,图灵程序设计丛书

在一般的编程中,程序员通常不需要掌握很深奥的数学知识。不过,认清并简化问题结构,总结出具有一致性的规则等,对于程序员来说是家常便饭。 不要觉得“不擅长数学”就漠然处之,而要想到“数学妙趣横生,要多加运用”,给每天的编程都注入数学的思维方式。 通过本书,若能使您从看似乎淡无味的数学中,体会到些许美妙和乐趣,那对于笔者来说就是无上的喜悦。

  以上是作者写于本书的结尾处的几段话。如果从形式上来看,本书把数学的知识写的十分有趣,无论是程序员还是其它岗位的人都可以阅读。从内容上看,讲的是计数法、逻辑、余数、数学归纳法、排列组合、递归、指数和对数等基础知识。我自认为打小对数学十分感兴趣,但由于初高中做题太多,导致后来的大学除了应付下考试的高数,就与数学说再见了。最近一次看到与数学相关的知识是一个叫《十分种速成课:哲学》的系列片,里面说到哲学运用的逻辑学,让我觉得数学和哲学有点点关系。扯远了,总之,数学是一种可用的工具,这个谁也不能否认。

  如果你是程序员,那么就会遇到if…else,while…,for…等关键字,又或许在刚开始学习编程的时候,不小心都遇上过死循环。这些看似每天都在用的知识,其基础都是数学。如果说吴军的《数学之美》是写给成年人看的,那么本书的受众范围就更广泛些,比如初中生或是高中生,读起来也完全没有问题。内容浅显,有种“授人以鱼不如授人以渔”的感觉。

  数学是所有人都绕不开的学科,程序员亦如此。就如同作者说的,要用积极的态度去面对并体会它的“美丽”。

  好了,想想再过十年这本书就可以传给我的大胖侄子了,甚是欣慰呢~

  《程序员的数学》读后感(二):写的浅并且大部分知识都无意义

  就拿一个简单的汉诺塔的例子吧,这种分析大家都是按照这样的思路来做:首先找出递推公式,然后根据递推公式找到封闭形式,然后出来以后还得证明出的结论都是正确的。

  然后这本书的递推公式就讲到了Tn=Tn-1 + Tn-2,然后根据这个开始当n为0,1,2依次找寻规律出来了最后的结论是(2的n次方-1),当然后续也没任何证明。我就奇怪了做数学都是这么不严谨的么?你根据递推公式只是来猜测几个值,然后根据你猜测的值来猜测最终封闭形式,并且最终你也不证明啊,你这要多坑爹有多坑爹好不???

  这个地方的讲述我觉得还是<<具体数学>>里面讲的是最好的,这本书基本就是一个笑话!!!

  《程序员的数学》读后感(三):想复习数学的程序员必看

  这本书买完之后,看豆瓣书评说这本书是一本写给初中生的数学书,以为买上当了。后来慢慢读了一遍,发现确实是讲从小学数学到初高中数学的,不过讲的都是当初学的一些经典问题,现在再看一遍对我的程序员生涯还是很有帮助的。主要讲了,二进制,基本逻辑,数学归纳,排列组合,递归等问题,每个问题都有一些相当经典的例子。

  前一段时间做了几个www.interviewstreet.com的题后就被卡住了,现在复习了这些基础数学,又有信息继续做下去了。

  推荐当初学数学的时候就明白这些问题,只是后来忘了,现在想复习一下的程序员看看,要是当初就没想明白这些问题,就不要看了。

  《程序员的数学》读后感(四):用意不用力

  前戏:很重要!

  买这本书,是看了豆瓣很多书评,觉得喜欢他的人爱不释手,不喜欢的人束之高阁。好奇驱动,让我阅读这本书。

  图灵出的书一般品质上还是有保证的,只不过外文书232页卖49元,真实不便宜啊!

  正文:书归正传!

  作者是一位日本人,自然本书以日本作家常用套路,以小见大的手法,风趣的数学小题,阐述着自己的观点。---对于程序员来说拥有数学思维很重要

  没有太多高深的数学题,主要知识也只是天朝的高中水平。

  个人感悟与读书摘要总结:

  一、“0”不光是参加运算的数字,同时也是当作占位符使用。

  二、逻辑判断,要兼顾“完整性”和“排他性”

  表现形式:真值表、文氏图、逻辑表达式、卡诺图

  :在处理复杂逻辑判断时,可以使用卡诺图进行简化逻辑。

  三、对于难以理解的庞大数值,只要发现其周期性并使用余数(一除法进行分组),就能够简化问题。

  :遇到复杂问题不必陷入“想正确把握所有细节”,完全可以如“奇偶校验”般的,抓住关注点,按照其进行分类,以简化细节。

  四、遇见无穷或是重复性操作时使用数学归纳法。

  1.确定循环不变式

  2.确定满足循环不变式的循环条件。

  五、对于计数问题,使用置换、排列、组合、乘法和加法法则。同时注意防止“遗漏”和“重复”

  六、递归是数学归纳法的很好的体现,注意递归公式、递归定义的确立,重点注意:递归的“出口”,否则会膨胀为死循环。

  七、当数据值域变法浮动大时,不易发现规律,可以使用指数形式或是对数形式表示值域,以减缓变化趋势,便于发现规律。

  :二分查找在大数据时查找的效率是很高的!但是由于使用二分查找的集合必须是有序的,所以对添加或是删除元素操作很费时,数据少时也费事。

  八、可以使用反证法推出矛盾,论证当前问题是否是不可解的。

  九、总结:程序员的数学到底是啥子来?

  1.认清模式,进行抽象化。

  2.又不擅长催生出的智慧。

  3.幻想法则(此处暂时理解为要有想象力)

  尾声(总结):

  程序员的数学,

  透过现象看本质,

  此书无高深数学,

  只为传达领会精神,

  如同太极一般,

  用意不用力,

  所以不能说作者水平差,

  重点领会精神,

  当然书只能算是抛砖引玉罢了!

  本书翻译很一般,多出中文翻译有误,

  对公式和题的讲解有偏颇。

  茶余饭后,出差旅行,通俗读物罢了,莫纠结。

  《程序员的数学》读后感(五):[TEAP早期试读]《程序员的数学》- 前言

  图灵社区按:

  TEAP是什么?TEAP是Turingbook Early Access Program的简称,即早期试读,它公布的是图灵在途新书未经编辑的内容。一本书的翻译周期约为3到6个月,如果在翻译过程中,译者就能与读者进行沟通和交流,对整本书的翻译品质是有帮助的。通过TEAP,读者可以提前阅读将来才能出版的内容,译者也能收获宝贵的反馈意见,改进翻译,提高质量。

  本书原名为《プログラマの数学》,中文暂定名为《程序员的数学》,有问题可以在这里留言,也欢迎大家与我或者编辑联系交流,本篇内容选自书中前言。

  作者结城浩(1963年7月 - ),是身在日本东京武藏野市的一位经验丰富的程序员,也是一位资深技术作家。开发出了有名的YukiWiki软件。结城浩经常在杂志上发表程序入门连载文章和翻译技术类文章,除此之外还著有程序、数学方面的图书达30多本,其中有多部被翻译成英语和韩语在国外出版。由他所著的设计模式入门书长期畅销,被媒体誉为日本国内普及设计模式的功臣。

  ■前言

  大家好!我是结城浩。欢迎阅读《程序员的数学》。

  本书是为程序员朋友们写的数学书。

  编程的基础是计算机科学,而计算机科学的基础是数学。因此,学习数学能有助于扎实编程的基本功,写出更健壮的程序。

  “但我很不擅长数学啊。”,有的读者会有这样的想法。特别是“一出现算式,就跳过不读”的读者会有不少吧。坦率而言,我自己遇到书中的算式,也想跳过去。

  本书尽可能减少了“令人想跳过不读的算式”。也没有过多的定义、定理和证明。

  这是专为程序员更好地理解日常编程而写的书。希望您能通过本书学到有助于编程的“数学思维”。

  ■数学思维示例

  学习“数学思维”说起来太抽象了,我们来举些具体例子。

  【条件分支和逻辑】

  在编程时,我们根据条件将处理分为多个“分支”。C和Java语言中使用的是if语句。我们是这样控制处理流程的,当条件满足时执行这个处理,当条件不满足时执行那个处理。这时,我们使用了数学领域之一的“逻辑”来控制程序。因此,必须熟练掌握编程中构成“并且”、“或者”、“非……”、“如果……”等逻辑的元素。

  【循环和数学归纳法】

  我们在处理大量的信息时,使用程序进行“循环”操作。例如,使用for语句可以循环处理大量数据。支持循环的就是“数学归纳法”。

  【分情况和数数法则】

  将许多条件和数据“分情况”时,程序员必须注意千万不能看漏。这时加法法则、乘法法则、排列、组合等“数数法则”将助你一臂之力。这是程序员应该熟记于心的数学工具。

  通过本书,也可以学到递归、指数、余数等基本却重要的思维方式。

  ■人类和计算机的共同战线

  我们写程序是为了解决人类解不出的问题。程序员理解问题,编写程序。计算机运行程序,解决问题。

  人类不擅长重复劳动,很容易产生厌倦和出错。但人类却擅长解决问题。与此相对,计算机很擅长重复劳动,但不能自行解决问题。

  即人机合力就能解决问题。

  遇到难题,光靠人类不能解决,光靠计算机也不能解决。而人机合力就能解决问题。也是本书要传达的主旨之一。

  不过,编写程序也有难度。无论人类和计算机如何合力出击,总有解决不好的问题存在。本书,也对人类和计算机的界限进行了分析。

  在读完本书时,希望您能对以程序为媒人机共同要完成的事情有更深刻的理解。

  ■本书的读者对象

  本书的主要对象读者是程序员。不过,若您对编程或数学感兴趣,读起来也会一样有意思。

  您不需要精通数学。书中不会出现∑和∫等很难的算式,因此自认为不擅长数学的读者也完全可以阅读。顺利阅读本书所需要的知识,只需四则运算(+-×÷)和乘方(2的3次方=2×2×2)这种程度就行了。除此以外的知识,都会在书中加以说明。

  如果您对数和逻辑感兴趣,定会更津津有味地阅读本书吧。

  您也不需要精通编程。只要稍有一些编程经验,就会对理解本书内容有很大的帮助。有一部分说明是用C语言写的程序,不过就算不懂C语言也无妨。

  ■本书结构

  本书各章内容,可以以任意顺序阅读,但笔者推荐从第1章开始按顺序阅读。

  第1章,对0进行了讨论。以按位计数法为主题,学习0的存在简化了规则。并对“无即是有”的意思进行了思考。

  第2章,学习使用逻辑来整理繁琐的内容。介绍逻辑表达式、真值表、德・摩根定律、三值逻辑、卡诺图等。

  第3章的话题是余数。我们要记住“余数就是分组”的观点。这章会学习到对于难题,只要找到周期性就有获解可能。

  第4章,学习数学归纳法。数学归纳法只需要2个步骤就能证明无穷的断言。还会介绍使用循环不变式写出正确循环的例子。

  第5章,学习排列组合等数数法则。数数的关键在于“认清数数对象的性质”。

  第6章,学习自己定义自己的递归。通过汉诺塔、斐波纳契数列、分形图形等,练习从复杂事物中发现递归结构。

  第7章,学习指数爆炸。含有指数爆炸的问题,用计算机也不容易解决。我们要将指数爆炸为我所用,解决大规模问题。还会学到二分法检索,理解将问题空间一分为二的意义。

  第8章,以停机问题为主题,认识到许多程序上的问题,是无论计算机如何发展都不可解的。本章也会学到反证法和对角论证法。

  第9章,回顾本书学习内容,思考人类认清结构的能力是如何作用于解决问题的,人机协作又具有何种意义。

  ■谢辞

  首先要感谢Martin Gardner。小时候我痴迷于阅读您所著的《数学游戏》,至今记忆犹新。

  我还要感谢支持我的广大读者和为我祈祷的基督教朋友们。

  以下各位为本书原稿校审并给予了宝贵建议,在此深表谢意!(按日语五十音图顺)

  天野胜、石井胜、岩泽正树、上原隆平、佐藤勇纪、

  武笠夏子、前原正英、三宅喜义

  特别感谢在本书创作过程中给予极大关切和支持的SoftBank出版有限公司的野泽喜美男主编。

  感谢一直鼓励我的我最爱的妻子和2个儿子。

  在餐桌上教我方程式乃至微积分的父亲,本书也是献给您的。非常感谢父亲!

  2005年2月

  结城 浩

  《程序员的数学》读后感(六):深度加一点,价格减一点

  最近买了两本数学类的科普读物,《数学之美》《程序员的数学》。这是我第一次在豆瓣上评论,以前在豆瓣上看到一大片溢美之词的书经常就买了,现在看来还是过于轻信其他人的话了。

  这两本都有同样毛病:标题起的太大,《程序员的数学》我才看一点,感觉更像一本中学生的科普读物,或者计算机入门书籍,这里的入门是指了解一下基本的数学思想,仅此而已,而不是给程序员看的数学书。也许作者本来的定位就是这样的,是我自作多情理解偏差了。还要吐槽的是价格,真的感觉贵了点,薄薄的两百多页,这两百多页内容还是有水分的,简单的数学过程一步一步列出算术式,有的甚至一页把1到52的阶乘全列出来了,真心对不起50块大洋。

  《程序员的数学》读后感(七):2013年读完的第一本数学书

  新年伊始,有两件和数学有关的大事:一是儿子期末数学终于考了个100分,二是国际上诸多机构和组织合伙儿把今年命名为“地球数学年”(Mathematics of Planet Earth 2013)。

  前一件事更大。分数不是重点,重点是看到了进步。数学曾是儿子最弱的一门,自从我用自己的方式给他辅导以来,我看到了他的提升,还有他对数学的兴趣的增加。这个100分来的及时,我很开心,自然借机鼓励他继续加油,告诉他努力和坚持才是克服困难的唯一途径,百试不爽。

  优秀的数学读物依旧层出不穷。日本结城浩的《程序员的数学》成为我今年看完的第一本。名为写给程序员,其实人人可以看。过去我在出版社给新编辑上课时曾建议说,锻炼思维和规划能力的一个很好的方法(对于我们这些不是学IT的)就是学学电脑编程。概念明确、逻辑严谨、模块清晰、流程简洁,所有这些要素,对解决各类问题都是法宝。编程并不需要多么高深的数学,这本书所要求的起点正如它第一章的标题:“0”。

  《程序员的数学》是数学读物中少有的可以让人一口气通读的那种类型,语言通俗,环环相扣,风格非常从容,既不拒人千里,也不为图轻松而止于浅薄。它从计数法以及0的作用说起,讲了逻辑、余数、数学归纳法、排列组合、递归、指数爆炸、不可解问题等等,把关键点阐述得非常透彻,时不时让我有“对呀”、“原来如此”这样的感叹。

  结城浩在最后的总结中提到“幻想法则”,其实是点出了数学思维的关键,即把问题从现实世界中抽象出来,以一种虚拟的、形式化的方式在数学的“幻想世界”中解决,再返回现实(下图)。

  理性的架构原来可以用感性的词汇来描述,这就是发现的乐趣。

  《程序员的数学》读后感(八):换一种角度,别有一番风味

  很多人给的分低,也有很多人说这本书很基础,有些章节对我来说没有什么用。我不敢说这些想法没有用,毕竟“萝卜白菜各有所爱”。我认为关键是我们用一种什么样的心态读这本书,从什么样的视角来审视书中的内容。如果我们还是和小学初中高中一样,仅仅是把数学当做一堆数的运算来看,那么这本书没什么读的价值,我觉得他的难度不会超过高中数学。而且,你也不会有什么不一样的收获,正如这么多年我们一路走来,即便是文科生(我自己就是),至少到高中还在学数学,那么数学究竟有什么用呢?我们出门购物肯定不会列一堆公式,证明自己花钱是多么合逻辑。数学真正的用处不在于具象的生活琐事,而是他抽象的魅力。即面对纷繁复杂的世界,将其抽象为条理清晰的事实,给人以思想上的启发。这也正是作者写作此书的意图。作者并不是要教给我们什么奥妙玄幻的数学公式,让我们仰望数学殿堂,却又觉得遥不可及,而是要教给我们一种思想,一种分而治之,化繁为简的思想。想真正掌握并将这种思想运用自如恐怕并非易事。

  《程序员的数学》读后感(九):别把本书摆错了位置

  首先,这是本好书。

  本书有相当不错的易读性和趣味性,可以作为最入门级别的启蒙教材。我认为数学和编程是很重要的两个东西,而这本书可以当成这两门学问的基础读物。

  或许对你的水平而言,你已经完全看不上这种水平的内容了。但是还有你的下一辈下一代。想想这本书对那些初学者的作用影响吧。

  本书介绍了与编程有关很基础的数学知识。本书介绍了与编程有关很基础的数学知识。因为很重要所以说两遍。对于数学底子好的人,自然有《具体数学》、《算法导论》和TAOCP等经典等着你们。而本书不是那么高深的东西。

  自高中见了数学题海之后,我就基本对数学失去了兴趣。在阅读本书的时候,感觉还是很不错的,有趣易懂,内容也的确是程序员所须知的。

  个人感觉全书中的不可解问题是非常重要也是全书最难理解的部分。关于不可解,我在知道图灵的停机问题之前都是没有一个清晰的认知的。我想还是有许多人跟我是一样的吧?这一章节告诉程序员,世界上存在不可解的问题,存在数学和程序都不能抵达的边界。

  所以别尝试用程序去计算感情了...

  本书还有一句话感动了我...是感动。

  最后一章,“由不擅长催生出的智慧”。

  “回顾本书,脑海中会浮现出‘人类不擅长某事’的印象,而正是这些‘不擅长’,催生出了各种闪耀的智慧。”

  或许我也该向自己“不擅长”的数学再迈出一步了。

  所以求推荐一些有趣的不高深的数学资料,最好是与编程有关或者是统计学方面的~~

  《程序员的数学》读后感(十):一本写给初中生的数学书

  我的日语很烂,不知道这本书的原名叫做什么,但是我只是内心浅浅的期待这本书的名字是非直译来的。

  看了几章之后,我将这本书扔在了一边,如果这本书叫《程序员的数学》实在是对程序员的高级黑吧,也许我把这本书给我还在读高二的表弟看,他会说,你大学明明是白读了么,不过就需要这些东西而已么?

  当我刚才在微博上闲逛,看到有网友说看这本书需要数学基础的时候,刚刚喝下的一口水几乎喷了出来,也许并非每个领域的程序员都需要如同高等代数,数理统计这样的偏专业数学课,也许松本行弘说自己不懂数学也能开发出Ruby,也许有观点说软件领域需要数学学家也需要物理学家。但是我还是固执地认为本书的内容实在属于高中时期就应该掌握的数学基础,作为一个起码合格的程序员,无论你是物理学家还是数学学家,无论你是把自己叫做工程师,还是码农,这些最最基本的数学基础还是必不可少的。

  最后不得不感叹一句,现在职业的门槛真的越来越低了。

评价:

[匿名评论]登录注册

评论加载中……