刘未鹏|C++的罗浮宫

Knowledge sharing is the best reuse

刘未鹏ID:pongba
[修改头像]
703988次访问,排名42好友7人,关注者62
pongba的文章
原创 99 篇
翻译 8 篇
转载 0 篇
评论 1509 篇
刘未鹏的公告
除非特别声明,本站采用Creative Commons License许可。转载请注明作者、出处,非商业。

喜欢这个Blog的风格?见这里这里,还有这里

我的豆瓣饭否

讨论问题请到TopLanguage小组

TopLanguage

gtalk/msn(邮件请发送到gmail邮箱)

pongba@gmail.com
pp_liu@msn.com

订阅C++的罗浮宫

  • FeedSky
  • 订阅到鲜果
  • 订阅到Google
  • 订阅到抓虾
  • 订阅到BlogLines
  • XML聚合

搜索C++的罗浮宫上的内容

最新发表

    whaz going on


    饭否

    books I've translated




    最近评论
    李彬:我大一本科,也是所谓的“信息与计算科学”专业的,现在拼命学习C++,学些高代 分析之类的课,其他课实在没兴趣,我接触电脑业比较早了,前辈们的经验一定会让我少走弯路的
    pongba:@julie:
    sorry, 不知道啊:-)
    Kenny:“肯德基和麦当劳的食物中的热量早就超过了人体所需,但我们的身体系统还是照样笑纳”

    对这个,我有点话要讲:肯德基和麦当劳套餐一直比中餐馆的食物更健康——当然,这个是从统计意义上来讲的,如果有个MM进中餐馆后一直点素炒苦瓜加一碗米饭那就别说了

    我觉得你这句话写得有失水准,平时看BLOG感觉你满有深度的,但这一句可能是人云亦云得太多了吧?
    julie:请问:Viking Adult出版社在哪个城市?

    我在豆瓣上看到你读过斯蒂芬平克的思想的材料

    pongba:@bigfatsea:
    Ma和Mb只需要两相比较便至少可以扔掉一个,所以不存在复杂度问题。
    另,你的方法,包括上面列的方法,本质上都是一样的。用的都是一个关键性质。所以..
    关键是不同的思路,引领到同样的答案。
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes
    文章分类
    收藏
    相册
    其它图片
    文章中的图片
    我的大头贴
    C++
    Andrei Alexandrescu
    Andrew Lumsdaine
    Bjarne Stroustrup
    boost
    C++ Standard Commitee
    Doug Gregor
    Hans J. Boehm
    Jaakko Jarvi
    Jeremy G. Siek
    Matthew Wilson
    newsgroups
    boost.Developer
    boost.User
    comp.lang.c++.moderated
    comp.std.c++
    TopLanguage
    Open Source
    codeplex
    Google AJAX Search API
    Google Code Prettify
    Google Web Toolkit
    MS shared source initiative
    notepad++
    STLSoft
    不认识的朋友们
    fatalerror99
    Yelz
    余晟|乱象&乱想
    刘慈欣
    姬十三
    张志强|阅微堂
    许式伟
    阮一峰
    鲍志云
    其它
    科学松鼠会
    科学美国人
    科幻世界
    认识的朋友们
    chenyufei
    duguguiyu|Venus神庙
    Joyfire
    littlestone
    lxwde
    Matrix67
    soloist
    云风
    刘江@图灵
    史晓明
    周星星
    周筠@博文视点
    孟岩
    张振
    徐宥|4G Spaces&Web 2.3
    方舟@博文视点
    李笑来|Pure Pleasure
    杨文博
    王信文|地球没有好朋友
    荣耀
    莫华枫
    袁泳(g9)|负暄琐话
    谢东升
    陈冀康@华章
    存档

    原创 [TopLanguage主题讨论]今天我们思考

    新一篇: 跟波利亚学解题(rev#2)

    [TopLanguage主题讨论]今天我们思考

    By 刘未鹏

     

    最近一段时间,看了许多心理学思维的书,一些数学和解题的书,做了少许题目。两者结合起来,作了一点思考。本来是写了发到maillist里的,但写着写着这段时间以来的一些思考和总结冒了出来,超出了一篇mail通常的长度,遂贴了上来。

     

    波利亚的《How To Solve It》里面有一个章节列出了一大堆的Heuristics(启发法),譬如把题目泛化、考察问题的特例、类比、看能否扔掉什么条件、看能否修改什么条件、时刻注意未知量...等等。

    我有一个信念,所谓的灵感,背后一定有它的规则,虽然灵感发自无意识层面(参考《追寻记忆的痕迹》(坎德尔),以及《态度改变与社会影响》(津巴度)的"阈下刺激"章节),我们无法在灵感之前就在意识层面觉察到灵感诞生的过程,然而我们的确可以在灵感发生之后通过回顾和合情推理总结出最有可能的思路,数学的发展某种意义上做的就是这样一件事情,从最朴素的推理,到数学方法的产生——从三段论、形式逻辑、数学归纳法、类比、分治这些一般思维规则到鸽笼原理、极值原理、贪婪原理这类解决特定问题的原理,无一不是对思维过程的事后总结和整理。譬如我觉得形式逻辑就是最大的事后整理出来的思维法则,人类天生在无意识层面就具有推理能力(参见皮亚杰的认知发展原理),就像(也许)自然数是根植在大脑里面的概念一样,这些概念是进化出来的,我们无意识间就能够熟练运用。然而,要想让它们得到发展、生长,乃至能形式化到纸上,成为任何人都能操作的方法论,则需要意识的参与。

    我们做题、做题、做题,往往认为到达熟练的唯一办法就是做题,认为只有埋头做题才能够提高能力。诚然,练习是必要条件。但有些练习比另一些练习更有效。

    我们苦思冥想,在某个瞬间,从无意识层面冒出来一个点子,于是我们意识到,我们得到了灵感,于是我们欢呼雀跃;随着时间的推移,这样的灵感时刻也许会越来越多,于是我们认为这就是最有效的练习方法。我不这么认为,我觉得题目背后的思维大抵是相通的,通过一次次的等待灵感来练习,是被动的。在灵感出现之后总结为什么灵感会出现,背后可能有什么样的思维法则,看看能否泛化到一类题目,这样才是事半功倍的方法。

    事实上,你有没有发现,在解决一个问题的时候,你所意识到的思维过程是跳跃式的,伴随着一个一个从无意识层面“冒”上来的点子,每一个这样的点子都会把你的思维推向前一大步,最重要的这样的点子,被称为灵感。由于我们的意识层面无法觉察到无意识层面的推理逻辑,所以人们只能绝望地认为除了在一次次解题中让你的无意识层面的神经元得到锻炼之外别无它法。然而启发法的出现却正打破了这个观点,所谓启发法其实就是"原本被我们无意识运用",而"后来被形式化地提出来,可以由意识来指导的方法"。一旦总结出了重要的、一般性的思维的法则,我们下次便有可能不用绝望地等待摸不着的灵感的闪现,而是可以系统化地尝试各种可行的手法(启发法)了。

    要实现这个目的(即总结自己的灵感背后的思维规则进而泛化为一般性的解题思路),我认为一种方法是可取的,即所谓的"看得着的思考"——把你的思考过程详细的写在纸上。人的意识就像暗夜里的灯光,只能照亮一个很小的局部,如果不写下来,思维的灯光总是有限的,有可能走到后面忘掉前面,也有可能干脆就停在当地没法往下思考。写下来,可以避免这个问题,思维就可以往下走,思维的触角就可以扩充,灯光就可以照到越来越多的地方。此外,"写下来"还能够使得自己能够回过头来检视自己的整个思考过程——也许前面某个时候你想到一个东西,但如果不记下来你就很快忘了,而记下来回头一看也许你又有很大的启发。也许,你在思维的某一个环节上无意间引入了一个想当然的假设,从而掉入了思维定势的陷阱,通过写下来,就可以一定程度上避免这样的陷阱。

    从一道题目中获得最多的东西,这是做题的目的。

    你有没有这样的经历,一道题目你做不出来,你拿去问某个人,某个人想了一会儿,然后指出某个关键的步骤,于是一切豁然开朗。

    但这远远不是全部!

    如果你继续问他是怎么想到的,经验告诉我,几乎所有的可能性都指向一个答案"我也不清楚"。

    为什么?我自己的经验是,我相信是因为绝大多数人都没有仔细反省自己思考的过程。如果想不出来,拉倒。如果想出来了,万事大吉。但波利亚在《How to Solve it》中说到,他在教学的过程中总是碰到这样的问题"你是怎么想到的"?这个问题促使了他去总结思维的规律,有了这些规律,即使不那么富有灵感的人,也可以运用这些规律,让自己的思维的触角能够伸展开去。我们也不妨把这些启发法称作思维的“方子”(recipe)

    答案不重要,如果你直接告诉我关键的一步,我什么也没有得到。甚至就算我自己想出了最关键的一步,也许我还是什么都没得到。因为这样的经验只能极其有限地对我下一次的问题产生帮助;除非我能进一步思考思维背后的规则,才能让最多的东西为我以后所用。

    所以,重要的是思考的过程,不管这个过程是不是带领你得到答案。我相信只有最深刻反省了思考的真正过程,才能够从做题中获得最多的东西。

    遂发起这个系列"今天我们思考"(本来是想写"今天我们做题",但想到这个讨论的目的其实是思考,遂改了),大家都把自己认为最精彩的题目发上来(发的时候加上[今天我们思考<编号>]便于以后搜索),我想一定是一件于人于己都是非常有益的事情。

    题目未必要新,很多人都做过的也没关系,我的经验是,就算以前想出来的题目,现在抱着思索“我是怎么想出来的”的态度再去反思,也能够得到很有用的东西。所以关键是题目要经典,要能体现出某种思路。

    这个系列的关键是想要讨论做题的思路,而绝非题目本身,答案完全不是目的,就算得不出答案的思路也有很大的价值。如果你想到了一些思路,但看上去离答案还相差甚远,没有任何关系,贴上来,也许对别人的思路有很大启发。这是一个邮件列表内的头脑风暴。如果你想到了答案,并且能够总结出自己思路中的关键法则(你是怎么想到的),我想大家都会受益匪浅。

    如果你对以往做题的思路有很好的思考,也欢迎和大家分享~

    P.S. 邮件列表内的帖子和题目见这里,欢迎参与:)

    发表于 @ 2008年04月09日 15:00:00|评论(loading...)|编辑

    旧一篇: 阅读与思考

    评论

    #pengshao 发表于2008-04-09 20:22:57  IP: 220.167.41.*
    你的文章写得很好,有很多观点正好解释了我的困境
    谢谢 送上一句
    #yeka 发表于2008-04-10 22:48:55  IP: 59.173.202.*
    未鹏,把这篇文章贴到博文专家团里去吧
    #coolspeed 发表于2008-04-13 15:15:40  IP: 221.131.9.*
    我目前仍是个反方法论者
    #who_asp_user 发表于2008-04-13 23:23:46  IP: 121.46.96.*
    刘未鹏大哥的很多文章,对我有非常大的启迪以及教育。非常好!可谓是一套相当好的思维大餐啊!虽然您的博客取名为C++的罗浮宫,但是我看更多是关于教会我们怎么去思考,以及如何更好的思考(本人现在不是学C++的)。真正达到授人之渔的效果啊!关注您的博客好几个月了,不得不说下啊!!!我一定要把您的博客通读一遍:) 还有个非常奇怪的问题,有时看您的文章后,在过几个月再来看,会发现又会收获不少的东西,又会得到不一样的体会。。。:) 总之非常感谢。。。在我人生低迷的时候,能得到您的些许指点-嗯!好啊,那是相当的好! :)

    发言完毕。OVER!
    #who_asp_user 发表于2008-04-13 23:24:24  IP: 121.46.96.*
    希望你写出更多的好文!!!好!好!!
    #wujiao 发表于2008-04-16 17:31:27  IP: 219.143.86.*

    我们想跟您合作,请您写篇文章发布在您的博客上,或者由我们提供文章在您的博客上发布,我们公司会为此付给您相应的报酬。如果您有兴趣合作,我们可以进一步探讨合作细节。

    如果您有兴趣合作请速联系我,留下您的联系方式
    E-mail:alice.yu@evermotion.cn
    MSN:evermotion_cn@live.cn
    QQ:30996062
    #QQ301826 发表于2008-05-01 14:06:37  IP: 221.227.105.*
    把灵感写下来,呵呵,这应该是个好办法
    #fxzwahaha 发表于2008-05-07 19:40:46  IP: 61.180.27.*
    好文章吖!我前天刚刚看完GEORGE POLYA 的<HOW TO SOLVE IT>感觉很不错。现在正在看他得《数学的发现》
    很久以前,追溯到高二吧,我已经知道看到了大师的“解题表”受益匪浅吖
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © 刘未鹏