(define reverse-list
(lambda (s)
(if (null? s)
'()
(append (reverse-list (cdr s)) (list (car s))))))
(newline)
(display (reverse-list '(1 2 3 4)))
(newline)
(display (reverse '(1 2 3 4)))
(define (reverse sequence)
(fold-right (lambda (x y) (append y (list x))) '() sequence))
(newline)
(display (reverse '(1 2 3 4)))
(define (reverse sequence)
(fold-left (lambda (x y) (append (list y) x)) '() sequence))
(newline)
(display (reverse '(1 2 3 4)))
SICP 习题2.39 reverse实现
最新推荐文章于 2019-01-17 14:04:40 发布
本文介绍了一个使用Scheme语言实现列表逆序的方法,通过递归和append函数来实现,并展示了两种使用fold函数的不同方式来达到同样的目的。
3416

被折叠的 条评论
为什么被折叠?



