大多數(shù)程序員都習(xí)慣了平時(shí)在電腦上敲代碼,但也有些情境要求我們手寫(xiě)代碼,比如平時(shí)學(xué)習(xí)時(shí)做紙質(zhì)筆記,完成老師布置的課程作業(yè),同事之間交流討論講解思路,ACM比賽時(shí)手寫(xiě)分析算法,還有最常見(jiàn)的面試手寫(xiě)算法等。昨天看了康奈爾筆記法,覺(jué)得有點(diǎn)意思,于是想著把它應(yīng)用到程序員的圈子里來(lái),可以在面試等場(chǎng)合很好的向面試官闡述算法思路同時(shí)規(guī)范書(shū)寫(xiě),希望能給大家?guī)?lái)一些幫助。
一、什么是康奈爾筆記法
圖1.康奈爾筆記法
5R筆記法,又叫做康奈爾筆記法,是用產(chǎn)生這種筆記法的大學(xué)校名命名的。這一方法幾乎適用于一切講授或閱讀課,特別是對(duì)于聽(tīng)課筆記,5R筆記法應(yīng)是最佳首選。這種方法是記與學(xué),思考與運(yùn)用相結(jié)合的有效方法。
自從沃爾特·波克博士發(fā)明了康奈爾筆記法以來(lái),這一筆記法被廣泛應(yīng)用于聽(tīng)課、閱讀、復(fù)習(xí)和記憶材料。使用這一筆記法可以讓你的筆記系統(tǒng)化,使你主動(dòng)融入到知識(shí)的創(chuàng)造中去,提高你的學(xué)習(xí)力,從而幫助你取得學(xué)習(xí)成果。
二、程序員算法手寫(xiě)本設(shè)計(jì)思想
圖2.程序員算法手寫(xiě)本設(shè)計(jì)圖
程序員算法手寫(xiě)本采用了康奈爾筆記法的三大模塊劃分原則,同時(shí)結(jié)合了程序書(shū)寫(xiě)