自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 SICP 习题 ( 1.17) 解题总结

SICP习题 1.17 是将一个计算加法的过程修改成一个只使用对数计算步数的方法。 其实这个习题是对书中对数步数求幂方法的强调,对数步数求幂的方法是将一系列的乘法变成对数步数的求幂。本习题就是要求将一系列的加法变成对数步数的乘法。 需要转换的过程如下:(define (* a b) (if (= b 0) 0 (+ a (* a (- b 1))))) 我们要做的就是对

2013-10-23 23:08:27 3208 1

原创 SICP 习题 (1.16)解题总结

SICP习题1.16要求将书中递归形式的求幂过程fast-expt改写成迭代的。 如果对我们之前对于递归计算过程和迭代计算过程理解的比较透彻的话做这道题问题不大。 首先看看书中的fast-expt过程:(define (fast-expt b n) (cond ((= n 0) 1) ((even? n) (square (fast-expt b (/ n 2)))) (else (* b

2013-10-16 00:24:02 4261 2

原创 SICP 习题 (1.15) 解题总结

SICP 习题 1.15要求计算过程Sine的空间和步数增长阶。先看看Sine过程的定义,书中全写出来了,照抄出来:(define (cube x) (* x x x)) (define (p x) (- (* 3 x) (* 4 (cube x)))) (define (sine angle) (if (not (> (abs angle) 0.1)) angle

2013-10-14 00:51:06 5556 1

原创 SICP 习题 (1.14)解题总结

SICP 习题 1.14要求计算出过程count-change的增长阶。count-change是书中1.2.2节讲解的用于计算零钱找换方案的过程。要解答习题1.14,首先你需要理解count-change的工作方式,要理解count-change的工作方式,最好是自己去实现一遍count-change,为了避免自己直接抄书中的代码,我决定自己实现一遍用来找换人民币的的“count-change”

2013-10-13 00:05:59 6652

原创 SICP 习题 (1.13) 解题总结

SICP习题1.13要求证明Fib(n)是最接近 的整数,其中。题目还有一个提示,提示解题者利用归纳法和斐波那契数的定义证明Fib(n)=说实话,面对这道题我是完败,完全没有思路那种。不过,在讲计算机程序的书里跑出一道纯数学题有点过分了吧!太不把我们这些没有数学天分的程序员当程序员看了!然后我好长时间没去做这道题,后来我去看了《算法导论》,才突然发现SICP相比之下是如此平易近人,于是才回过头将就

2013-10-10 00:19:15 6638 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除