- 博客(4)
- 收藏
- 关注
原创 SICP 习题 (1.35)解题总结
SICP 习题 1.35要求我们证明黄金分割率φ 是变换函数 x => 1+ 1/x 的不动点,然后利用这一事实通过过程fixed-point 计算出φ的值。首先是有关函数的不动点,这个概念需要理解清楚,后面好几道题都是围绕函数不动点展开的。作者在这里设计这些习题的原因也是希望读者可以关注函数不动点。其实有关不动点这个东西我在做习题“1.8”的时候就觉得好奇了。为什么“(x+x/y)/2”会不断逼
2014-04-29 00:10:35 3889
原创 SICP 习题 (1.34)解题总结
SICP 习题 1.34的题目比较特别一点,对于没有接触过高阶函数的同学们来说是个很好的学习机会。题目是这样的,如果我们定义下面的过程:(define (f g) (g 2))那么就有:(f square) => 4因为有(f square) => (square 2) => 4还有(f (lambda (z) (* z (+ z 1)))) => 6因为有(f (lambda (z) (* z
2014-04-20 20:20:06 3676
原创 SICP 习题 (1.33)解题总结
SICP 习题 1.33将之前抽象的accumulate过程继续往上拔,要求我们定义一个带过滤器的accumulate过程,在这个过程中加多一个参数,这个参数是另一个过程,用来做过滤器。比如我们调用(filtered-accumulate 奇数?+ 0 my-self 1 next-int 100)就是列出1到100的数,对每个数调用(奇数? n),如果结果为真就将这个数加入到累积结果中,如果结果
2014-04-13 01:15:23 4304
原创 SICP 习题 (1.32)解题总结
SICP 习题1.32要求我们考察之前完成的sum过程和product 过程,说明它们是名为accumulate的过程的特殊情况。反过来说的话,就是要我们对sum过程和product过程进行抽象,形成一个更普遍,更通用的过程。我们在习题1.31的解题总结中已经讨论了,其实sum过程和product过程相差很小,就是累积的操作不一样,初始化的数值不一样。这样,我们就可以将不同的东西抽离出来,定义一
2014-04-08 00:09:40 4448
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人