正兒巴經(jīng)學習算法算起來也有快兩個月了涩澡,之前作為計算機工科生雖然算法和數(shù)據(jù)結構是必修課顽耳,但實際上只是停留在“理解”的層面,相當膚淺,更遑論舉一反三靈活運用了射富。因此膝迎,所謂“正兒巴經(jīng)”學習算法,意即開始對算法思想的本質(zhì)進行歸根究底的過程胰耗、對思維方法論進行歸納抽象的過程限次、對各種解題技巧進行一般化的過程、通過不斷練習來讓記憶內(nèi)隱化的過程..
在“正兒巴經(jīng)”學習算法之前柴灯,我曾經(jīng)有大半年時間都在用業(yè)余時間“正兒巴經(jīng)”地學習心理學和認知神經(jīng)科學卖漫。所以在開始正經(jīng)思考算法問題之前做的第一件事情就是仔細琢磨一直令我困惑的問題——那些看似抓不到摸不著的靈感到底是怎么來的。
現(xiàn)代心理學的一個最偉大的原則就是:所有的心理活動同時都是生理活動赠群⊙蚴迹——實際上,“心理活動”只不過是“大腦神經(jīng)活動”的通俗稱呼查描。雖然大腦的結構極度復雜突委,然而許多人不知道的是,現(xiàn)代神經(jīng)科學對大腦功能從高層原則上的認識已經(jīng)可以說是相當完備了冬三,而對于記憶和學習這塊更加是因為Eric Kandel的突破性工作變得相當清晰匀油。可以說剩下的工作主要就是補充細節(jié)了勾笆。于是乎钧唐,借助于三本關于記憶和學習的書,一本專門論述解題心理學的書匠襟,wikipedia,波利亞的三卷解題書该园,以及自己在思考有限多的問題的過程中對自己的思維過程的反省和總結酸舍,我試著對解題的心理學做了一個思考和總結(《跟波利亞學解題》)±锍酰——這聽起來很奇怪啃勉,一個本身只會初級算法的人又如何去思考涵蓋所有問題解決的思維過程呢?還是引用波利亞著名的發(fā)明者悖論吧:有時候双妨,一個一般性的問題反而要比它的一個特例更好解決淮阐。
然而,一般性的問題思考清楚了刁品,清楚解題思維的本質(zhì)了泣特,并不代表我就萬能了,就立即擅長解決所有算法問題了挑随。解題不是光靠思維的状您,巧婦難為無米之炊。事實上,在《跟波利亞學解題》中總結的一個非常關鍵的要點就是:啟發(fā)法固然可貴膏孟,然而知識的重要性是不可替代的眯分。不存在通用的、萬能的知識柒桑,要不然我們也不必到今天還在不斷探索物質(zhì)世界的規(guī)律了弊决。此外,獲得知識的過程——學習——本質(zhì)上是個體力活(盡管是有一定方法的體力活)魁淳,這個體力活大致分為兩步:
將外界(書本上的)知識轉(zhuǎn)化為外顯記憶飘诗。通過不斷練習,將外顯記憶轉(zhuǎn)化為內(nèi)隱記憶先改。
(關于什么是外顯記憶什么是內(nèi)隱記憶請參考wikipedia或者《跟波利亞學解題》)
而第二步又包含兩個過程:
將關于思維方法的知識轉(zhuǎn)化為內(nèi)隱記憶從而不知不覺就遵循疚察。將關于事實知識(例如“定理”、“性質(zhì)”)的提取線索們轉(zhuǎn)化為內(nèi)隱記憶從而看到XX就能想到YY仇奶。(參考《找尋逝去的自我》第二章“記憶的建構:對現(xiàn)在和過去的編碼和提取”)
關于第一點有本不錯的書——《學習的藝術》貌嫡。
關于第二點有一個不錯的例子,最初從李笑來老師的blog上讀到的(《把時間當作朋友》):
我李敖看的書很少會忘掉该溯,什么原因呢岛抄?方法好。什么方法狈茉?心狠手辣夫椭。剪刀美工刀全部下來,把書給分尸掉了氯庆,就是切開了蹭秋。這一頁我需要,這一段我需要堤撵,我把它分類分出來了仁讨。那背面有怎么辦呢?把它影印出來实昨,或者一開始就買兩本書洞豁,把兩本書都切開以后排出來,把要看的部分切開荒给。結果一本書看完了丈挟,這本書也被分尸掉了。這就是我的看書方法志电。那分類怎么分呢曙咽?我有很多自己做的夾子,夾子我寫上字溪北,把資料全部分類桐绒。一本書看完以后夺脾,全部進入我的夾子里面了。我可以分出幾千個類來茉继,分的很細咧叭。好比說按照圖書館的分類,哲學類烁竭,宗教類菲茬;宗教類再分佛教類、道教類派撕、天主教類婉弹。我李敖分的更細了,天主教還可以分终吼,神父算一類镀赌。神父還可以細分,神父同性戀就是一類际跪,神父還俗又是一類商佛。修女同性戀是一類,修女還俗這又是一類姆打。任何書里有關的內(nèi)容都進入我的資料里來良姆。進入干什么呢?當我要寫小說的時候幔戏,需要這個資料玛追,打開資料,只是寫一下就好了闲延∪剩或者發(fā)生了一個什么事件,跟修女同性戀有關系垒玲,我要發(fā)表對新聞的感想邢笙,把新聞拿過來,我的資料打開侍匙,兩個一合并,文章立刻就寫出來了叮雳。換句話說想暗,我這本書看完之后,被我大卸八塊帘不,五馬分尸说莫。可是被我勾住了寞焙,這些資料我不憑記憶來記它储狭,我憑用細部的很耐心的功夫把它勾緊互婿,放在資料夾子里。我的記憶力只要記這些標題就好了辽狈。標題是按照我的習慣來分慈参,基本上都翻譯成英文字,用英文字母排出來刮萌,偶爾也有些中文的驮配。今天我把看家的本領告訴大家,李敖知道的那么多着茸,博聞強記壮锻,記憶力那么好。我告訴大家涮阔,記憶力是可以訓練的猜绣。記憶力一開始就是你不要偷懶,不要說躺在那里看書敬特,看完了這本書還是干干凈凈的掰邢,整整齊齊的,這不對擅羞∈洌看完了這本書,這本書就大卸八塊减俏,書進了資料夾召烂,才算看完這本書。今天我為大家特別亮一手娃承,把如何看書的招告訴大家奏夫。不要以為這本書看完了,干干凈凈的新的算看過历筝。那個不算看過酗昼,因為當時是看過,可是浪費了梳猪。你不能夠有系統(tǒng)的扣住這些資料麻削,跟資料掛鉤〈好郑可是找我這個方法呛哟,可以把你看過的書,都把它的精華抓出來匿沛,扣在一起扫责。這就是我的這種土法煉鋼的治學方法。
恰恰運用了記憶最深刻的原理逃呼。
我們的大腦本質(zhì)上是一個計算器鳖孤,其物質(zhì)基礎是神經(jīng)網(wǎng)絡者娱;而不斷的練習則是對該網(wǎng)絡節(jié)點間聯(lián)系強度(神經(jīng)細胞間的突觸聯(lián)系強度)的訓練∷沾В——可惜的是像愛因斯坦大腦內(nèi)的經(jīng)過完美訓練的神經(jīng)網(wǎng)絡參數(shù)不能直接導入到我大腦中黄鳍,也許將來可以做到,但目前只有笨辦法腿准,實在是件郁悶的事际起。
所以,拿起書吧吐葱,訓練你的神經(jīng)網(wǎng)絡街望,路漫漫其修遠兮.
作者:著有《暗時間》一書