posts - 403, comments - 310, trackbacks - 0, articles - 7
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          SICP 習題記錄 (1)

          Posted on 2008-04-03 22:33 ZelluX 閱讀(1101) 評論(0)  編輯  收藏 所屬分類: Algorithm
          沒事干找了幾個SICP上的習題做,先是一道以前只想出一種很啰嗦的寫法的題目

          Ex 2.18
          把一個列表倒過來。不習慣在lisp里用iterative方式 >,<

          接下來幾題都是Map-Reduce思想的應用(或者照書上的說法,用enumerator - filter - map - accumulator這四個步驟操作一個list)

          用到的幾個函數:

          enumrate-tree 的功能是遍歷一個樹狀結構,把其中的所有葉子保存在一個list中。

          Ex 2.34
          利用Horner's rule計算多項式結果(這公式這幾天還經常碰到)

          Ex 2.35
          數出一棵樹中的葉子數。這題我的做法比較土,沒想到map-reduce操作上的遞歸,而是把葉子節點的值都改成1然后一個累加。

          其實只要遞歸調用主函數就行了

          Ex 2.36
          可以理解為計算矩陣各列之和吧


          > (accumulate-n + 0 (list (list 1 2 3) (list 4 5 6) (list 7 8 9) (list 10 11 12)))
          (22 26 30)
          主站蜘蛛池模板: 苏尼特右旗| 隆林| 资源县| 临猗县| 临沧市| 长治县| 北安市| 绥芬河市| 新余市| 新乡县| 汶川县| 乐至县| 兴化市| 化隆| 吉安市| 讷河市| 北碚区| 文化| 郓城县| 剑河县| 图们市| 那曲县| 方城县| 玉溪市| 平定县| 无为县| 德钦县| 天水市| 苏尼特右旗| 封开县| 东莞市| 扎囊县| 咸阳市| 越西县| 阆中市| 滕州市| 五台县| 岗巴县| 莱阳市| 澳门| 弥勒县|