练习2.37 这道题花了我太长的时间了,一开始我就把题目中的m看成了w。然后题中给出的dot-product的两个参数我还以为一个是向量另一个是矩阵。怎么算都算不出来,直到看到“返回求和......
练习2.37 这道题花了我太长的时间了,一开始我就把题目中的m看成了w。然后题中给出的dot-product的两个参数我还以为一个是向量另一个是矩阵。怎么算都算不出来,直到看到“返回求和......
练习1.35 依旧是每一小节中比较简单的第一题,计算黄金分割率的过程如下: (define get-golden-ratio(fixed-point (lambda (x) (+ 1 (/ 1 x))) 1.0)) 虽然比较简单,但我们还是测试一下...
练习1.40 首先根据公式x^3+ax^2+bx+c写出相应的cubic过程,它的返回值是一个接受参数x的过程: (define (cubic a b c) (lambda (x) (+ (cube x) (* a (square x)) (* b x) c))) (newto...
练习2.45 我们先将right-split和up-split抽象出一个split来。 (define (split big-combinersmall-combiner) (lambda (painter n) (if (= n 0) painter (let ((smaller ((split big-comb...
练习1.37 根据题目中的意思通过观察得到k项有项连分式的一种表达方式: f=N1/(D1+(N2/(…+Nk/Dk))) 这个式子可以不断展开,但如果我们把每一个”+”后面的式子记作T(i)。不对,我们应该...
练习1.41 对于一个接受单个参数x的函数f来说,要将它应用多一次的办法是执行以下表达式: (f (f a)) 由此可得相应的double函数,它接受一个函数f,并且返回一个能将f应用两次的过程: ...
练习2.30 如果这道题感觉有点难度的话,可以回过头来看看75页定义的两个scale-tree。我的定义如下: (define (square-tree tree) (cond ((null? tree) ‘()) ((not (pair? tree)) (squa...
练习2.31 我想说我已经越来越喜欢抽象了,将上一题中的map版本的square-tree抽象的方法是添加一个参数f,f是一个函数,因此将square替换成f即可。如下。 (define (map-tree f tree) (m...
练习2.36 虽然accumulate正在变得越来越复杂,但我还并未完全领悟到它的深刻意义。不过直觉告诉对于序列的序列,我们要做的是依次取出它每个序列的第一个元素。此方法来源于网络,我一直...
练习3-57 原文 Exercise 3.57. How many additions are performed when we compute the nth Fibonacci number using the definition of fibs based on the add-streams procedure? Show tha...
练习1.46 这道题要求我们写一个过程iterative-improve,其接受两个过程为参数,一个是判断检测是否足够好的good-enough?和另一个改进猜测的improve。其有一个猜测的数字作为参数,然后返...
没有更多内容
加载失败,请刷新页面