SICP第一章總結

第一章主旨思想

利用程序(procedure)來表達抽象的概念

  1. 利用簡單的思想整合成一個復合的概念.
  2. 清晰地分析出程序的邏輯,把一個復雜的程序拆分成獨立的部分.
  3. 從具體存在的(類似的)程序中提取出一個通用的概念并寫成程序.

程序的成分(elements)

程序有自己的名字(variable, argument)和操作符號(operator),除此之外就是條件語句,利用這三個部分有機結合就可以寫出一個完整的程序.

程序運行(evaluate)的過程

程序運行的過程最直觀的表現(xiàn)我覺得是使用程序框圖,這里有兩個結構需要留意,一個是回歸結構(recursive),一個是迭代結構(iteration).
這兩個結構牽扯出來的就是空間復雜度(growth of space)和步驟復雜度(growth of steps)的計算方法.

而對于寫程序而言,這兩種結構通瞅诳澹可以互換,回歸模型相對來說在空間復雜度上會更高一點. 一般對于涉及到回歸過程(recursive procedure)的程序,回歸過程(recursive process)會相對更容易實現(xiàn),因為我覺得相對比較直觀,然后通過一些轉(zhuǎn)換,可以講回歸過程轉(zhuǎn)變成迭代過程.

回歸過程

對于寫回歸模型我總結了一些自己的心得,在做題的時候找到一個通用思想,簡單來說就是把題目劃分成三個部分

  1. 可以重復利用的部分,或者說是循環(huán)引用的部分.
  2. 循環(huán)到底的底線情況,也就是最最最后一層循環(huán)的情況.
  3. 循環(huán)結果之間的關系,他們是如何整合的?相加亦或是別的.

迭代過程

迭代過程主要是如何將一個循環(huán)過程進行轉(zhuǎn)換,從而使用迭代模型.
這里的技巧在于引進一個可以保存結果的輔助函數(shù),輔助函數(shù)可以相對減少空間復雜度.
一般來說輔助函數(shù)和回歸過程的參數(shù)一致,但是多了一個記錄結果的參數(shù),有時還會有輔助計數(shù)器.
在思想上,回歸模型通常從起始層(迭代的最初層)開始,一步步直到問題的邊界情況出現(xiàn),然后再沿著模型的回歸邏輯,一步步回溯計算.
而迭代模型通常計算順序是和回歸模型相反,從邊界開始計算,一直到迭代最外層(表達不好這個,用詞還需要斟酌).

使用抽象概念編程(編寫抽象程序)

利用抽象概念編程主要是講程序作為參數(shù)帶入另一個程序,而且返回值還可以是其他的程序,利用Python的表達方式應該是這樣的.

主程序(參數(shù)程序1, 參數(shù)程序2)-->返回程序3

程序既可以作為參數(shù),也可以作為返回值.

lambda

lambda在抽象概念的應用上是一個方便的存在,lambda用于書寫匿名函數(shù),可以減少代碼量.但是需要注意的是在需要重復調(diào)用的程序上,lambda是無能為力的,這個時候要老老實實的寫出一個帶有名字的函數(shù)(procedure).例題1.46就是一個很好的例子.

第一章總結完了,我的github

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末桩匪,一起剝皮案震驚了整個濱河市喻喳,隨后出現(xiàn)的幾起案子抑片,更是在濱河造成了極大的恐慌,老刑警劉巖修械,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件终蒂,死亡現(xiàn)場離奇詭異,居然都是意外死亡叔磷,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門奖磁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來改基,“玉大人,你說我怎么就攤上這事咖为★跽” “怎么了?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵躁染,是天一觀的道長鸣哀。 經(jīng)常有香客問我,道長吞彤,這世上最難降的妖魔是什么诺舔? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮备畦,結果婚禮上,老公的妹妹穿的比我還像新娘许昨。我一直安慰自己懂盐,他們只是感情好,可當我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布糕档。 她就那樣靜靜地躺著莉恼,像睡著了一般。 火紅的嫁衣襯著肌膚如雪速那。 梳的紋絲不亂的頭發(fā)上俐银,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天,我揣著相機與錄音端仰,去河邊找鬼捶惜。 笑死,一個胖子當著我的面吹牛荔烧,可吹牛的內(nèi)容都是我干的吱七。 我是一名探鬼主播汽久,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼踊餐!你這毒婦竟也來了景醇?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤吝岭,失蹤者是張志新(化名)和其女友劉穎三痰,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體窜管,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡散劫,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了微峰。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片舷丹。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖蜓肆,靈堂內(nèi)的尸體忽然破棺而出颜凯,到底是詐尸還是另有隱情,我是刑警寧澤仗扬,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布症概,位于F島的核電站,受9級特大地震影響早芭,放射性物質(zhì)發(fā)生泄漏彼城。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一退个、第九天 我趴在偏房一處隱蔽的房頂上張望募壕。 院中可真熱鬧,春花似錦语盈、人聲如沸舱馅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽代嗤。三九已至,卻和暖如春缠借,著一層夾襖步出監(jiān)牢的瞬間干毅,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工泼返, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留硝逢,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像趴捅,于是被迫代替她去往敵國和親垫毙。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 文檔:1.6 Elements of Programming參考:cs61a.org/spring2018 1.6...
    olivia_and_dog閱讀 853評論 0 1
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理拱绑,服務發(fā)現(xiàn)综芥,斷路器,智...
    卡卡羅2017閱讀 134,599評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,509評論 25 707
  • 坐在電腦前猎拨,打下這幾個字的時候膀藐,時鐘已經(jīng)劃到最后兩個小時,我才開始寫今天的打卡文章红省。唉额各,有意無意中,又拖延到了現(xiàn)在...
    撿歲拾光閱讀 147評論 0 0
  • 2017年5月10日 天氣晴 星期三 又是忙碌的一天吧恃,手里的活還沒干完虾啦,她姥姥就給我打電話說“:趕緊...
    陌上清歌的簡書閱讀 180評論 0 0