(define (equal? x y)
(cond ((and (null? x) (null? y)) true)
((and (not (pair? x)) (not (pair? y))) (eq? x y))
((and (pair? x) (pair? y)
(equal? (car x) (car y))
(equal? (cdr x) (cdr y)))
true)
(else false)))
(equal? '(this is a list) '(this is a list))
(equal? '(this is a list) '(this (is a) list))
(equal? '(1 2 3 (4 5) 6) '(1 2 3 (4 5) 6))
(equal? '(1 2 3 (4 5) 6) '(1 2 3 (4 5 7) 6))
sicp excercise 2.54
最新推荐文章于 2018-11-10 15:34:18 发布