读书笔记——《暗时间》(2/2)

经典摘抄

1、事实上,从真实的数学历史发展的角度去讲授数学,也是数学教学法的最佳方法。

2、波利亚的《How to solve it》提到的思维方法: 
(1)时刻不忘未知量 
即必须时刻将问题放在注意力层面; 
(2)用特例启发思考 
便于通过试错这样的手法去助探问题的内部结构。 
(3)反过来推导
反向解题隐含了解题中至为深刻的思想:归约。 解决问题时,顺着推实际上就是运用另一个启发式方法——试错——。 
试错是最常用,也是最有效的启发法,然而试错却不是最高效的。

结论往往蕴含着丰富的条件,譬如对什么样的解才是满足题意的解的约束,一般来说,借助结论中蕴含的知识,我们便可以更为“智能地”搜索解空间。 
感悟:书中提到未知数求解,就是利用了结论推导结果。这使我反思了从小的数学学习过程,竟然发现,各种各样的解题方法,原来都可以归纳为那么几种,无论做什么事,都应该多思考,去总结规律,才能有所收获。

(4)试错
(5)调整题目的条件 
(6)求解一个类似的题目
为了便于脑中的知识结构真正能够“迁移”,在记忆掌握和分析问题的时候都应该尽量抽象地去看待,这样才能否建立知识的本质联系,才能否最大化联想空间。
(7)列出所有可能跟问题有关的定理或性质
(8)考察反面,考察其他所有情况 
(9)将问题泛化,并求解这个泛化后的问题 
解决一类问题,比解决这类问题里面某个特定问题还要容易,波利亚称为“发明者悖论”。 
两个有趣的启发法: 
(10)意识孵化法 
我们先把问题吃透,放在脑子里,然后等着我们的下意识把它解出来。

感悟:这个思维方式必须提一下,我上个周读了这本书的前半部分,也提出了这种方法,和思维体力有关,举一个我的例子:最近我一直在完成一个操作系统的实验,要编写c代码实现多任务处理器调度的问题,我编了一天的代码,怎么调试,老是会出现乱码,研究了一晚上后我确定我的思路没问题,还举例好多例子,在纸上跑了一下代码,但就是得不到最终结果。我把这个问题放了几天。但这几天里,我在健身房的跑步机上想过,上课走神时想过,一个人吃饭的时候想过,也没想出个什么,反而越想越对。几天后,我再接着调试的时候,改着改着突然就调通了,也没改什么关键代码,就是一下把变量递增的那条代码顺序调了一下。

(11)烫手山芋法 
就是把问题扔给别人解决。在这个网络时代,几乎任何知识性的问题,都可以迅速搜索或请教到答案。

3、思维定势就是指下意识遵循既有知识框架思考的过程。

4、如何在获取知识优势的同时,防止被知识束缚住,是一门技术。
无论是在解题还是在学习的过程中,问自己一个问题“我是不是已经掌握了这个知识最深刻最本质的东西”是非常有益的。

5、有很多题目,求解他们的那个关键的知识可以通过考察题目本身蕴含的条件来获得,这类题目就是测试思维本身的能力的好题目了。而如果这个性质根本无法通过对题目本身的考察得出来,那么这个题目测试的就是知识储备以及联系能力。

6、事后偏见: 一旦知道结果之后,所有指向结果的证据看上去都那么显然和充分,而同时所有反结果的证据看起来都那么不显然和不充分。

7、看得见的思考(将思考过程清晰的写在纸上)的好处: 
(1)将思维过程记录下来,给了我们完全的回顾机会; 
(2)扩充了我们的工作记忆,增加了思维的缓存; 
(3)作为视觉线索,可能激起更多对既有知识的回忆; 
(4)避免思维定势错误; 
(5)发现另一种可能性; 
(6)对解题完后的反思有益。

8、如果你想钉一个钉子,所有东西看上去都像是锤子。

9、如果你专注于你想要解决的问题,那么你所看到的东西就会呈现出以往你没有看到的一面。

10、鱼是最后一个看到水的:说明了思维定势的问题。 
普通人遵守规则,牛人无视规则,伟人创造规则。

11、设计模式是补丁,其出现往往意味着语言不够强大,其使用意味着大量的、与所要达到的编程目的无关的样板式代码。

12、不要觉得不用设计模式就不够好不够强大,以尽可能简单的方式完成任务才是王道。

13、学习编程重在学习基本的概念和素养。

14、Think out of Box.跳出盒子想问题。

15、我们要的不是相对论,而是诞生相对论的那个大脑;我们要的不是金蛋,而是下金蛋的那只鸡。

16、在没明白背后的证明之前,任何一个定理对你来说都是等价的——等价于背乘法口诀表。

17、Lisp、Scheme、Haskell……这些以抽象性和简洁美为特点地语言,至今仍然活跃在计算机科学界,虽然由于其本质上源于lambda算子理论的抽象方式不符合人的思维习惯,从而注定无法成为主流的编程语言,但然而这仍然无法妨碍它们成为编程理论乃至计算机学科的最佳教本。

18、作者在第三篇跟波利亚学解题中的后半部分,从图灵的停机问题、Y Combinator、lambda calculus的问题,从递归、不动点原理,依次分析它们产生的过程,最终顺水推舟地归约到哥德尔的不完备性定理,从一个逆向的过程中,给读者呈现了这些著名的科学论断的推理提出过程,更是不着痕迹的照应了作者一开始提出的观点。

作品赏析

作者从三大部分:暗时间、思维改变生活、从解题的过程出发分析思考的方式,前两部分,适合大多数读者,而第三篇章,虽然讲的是思考的方式问题,但是举得例子主要偏重计算机科学和数学,对于没有这些知识的读者来说,理解起来是枯燥无味的。尽管是这样,前两章的内容,其中的一些观点,还是会给读者很大的启示,并不是类似心灵鸡汤,而是一些可以实践的观点,并且可以切切实实的在生活中实践,很具有指导意义,是一部不错的书。

好的算法书

波利亚的《How to solve It》 
UdiManber的《算法引论:一种创造性方法》

转载于:https://www.cnblogs.com/java-stx/p/4985051.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值