连击 天
fork: star:
练习2.5 这道题的意思是有一个新的cons,其接受两个参数a、b,并且返回(2^a)*(3^b)。这个比较容易实现了。 (define (cons a b) (* (expt 2 a) (expt 3 b))) (cons 2 2) ;Value: 36 根据...
练习2.39 通过前一习题的类比相信已经知道了fold-left和fold-right的内在意义,本题中要求的逆序数可以用cons来构造。具体为,先将list的第一个元素取出用(cons (car list) ‘() )构造,...
练习2.27 又是修改程序的题目,要求我们写出的deep-reverse函数要将表中的元素也反转过来,这其中应该要用到递归来实现吧。 (define (deep-reverse tree) (cond ((null? tree) ‘()) (...
练习2.4 直接运用对比的技巧就可以猜测出相应的cdr表示如下: (define (cdr z) (z (lambda (p q) q))) 但我们还是要按照题中要求用代换模型来检验。先来检验car的。 (car (cons 0 1)) (...
练习2.36 虽然accumulate正在变得越来越复杂,但我还并未完全领悟到它的深刻意义。不过直觉告诉对于序列的序列,我们要做的是依次取出它每个序列的第一个元素。此方法来源于网络,我一直...
练习2.23 这道题就有小小的难度了。(define (for-each f lst) (cond ((not (null? lst)) (f (car lst)) (for-each f (cdr lst))))) 如果用上前面经常用到的begin和if,这里还有另一种f...
练习2.19 这道题的题目比较长,但是难度却不大的。无非就是用cons、car、cdr等等,就像前面的矩形啊点啊什么的。 (define (first-denominationcoin-values) (car coin-values)) (define...
练习2.3 我们并不必急于写出点什么,先来回过头看看书吧。第56页说到了一种称为按愿望思维的强有力的综合策略。在这道题里,我们就可以假设已经写好了能够表示矩形的代码,以及能够求矩...
练习2.47 这道题重点就是要理清楚list和cons的关系了。我们依次来写出过程函数。 (define (make-frame origin edge1 edge2) (list origin edge1 edge2)) (define (origin-frame f) (car...
练习2.29 这种题,还有之前的那个rectangle的题目,对于变量、函数等的命名简直要让人疯掉。先来写出题目中的left-branch和right-branch吧。 (define (left-branch mobile) (car mobile...
练习2.2 (define(make-segment start-point end-point) (cons start-point end-point)) (define(start-segment seg) (car seg)) (define(start-segment seg) (cdr seg)) (define(make-...
练习2.42 这道题曾经在C#中写过,但是写出来的代码却没有Lisp中的朴素。用了一大堆的数组和for循环。但是在这里,用car、cdr来构造就行了。 我们按书中给出的步骤来一步一步求解这个问题...
练习2.38 这道题比较有意思了,我们先来将fold-left和accumulate类比,accumulate是递归,而fold-left是迭代。前者通过不断地将(op result (car rest)变换成initial,通过将(cdr rest)变...
练习2.48 (define (make-segment start end) (list start end)) (define (start-segment s) (car s)) (define (end-segment s) (cadr s)) 练习2.49 待填充 版权声明:本文为 NoMasp柯于...
练习2.21 如果在看SICP这本书之前做过其他准备工作,或者看过我的【Scheme归纳】那几篇文章,那这些题都是小case了。 (define (square-list items) (if(null? items) ‘() (cons (squar...
练习2.18 这道题也不难,通过迭代来完成。不过我想整个过程,无论是两个define还是一个define,都只用一个参数,但还为完成,希望有谁会的在博文下面评论咯。 (define (reverse list) (...
没有更多内容
加载失败,请刷新页面
文章删除后无法恢复,确定删除此文章吗?
动弹删除后,数据将无法恢复
评论删除后,数据将无法恢复