请基本上帮我提供Scheme中的代码,如下所示 一个函数(append),它接受一个原子和一个列表,并将该元素添加到列表的末尾。
示例:
(append 'A '(B C D)) -> (B C D A)
答案 0 :(得分:2)
递归方法是:
(define (append atom lst)
(if (empty? lst)
(list atom)
(cons (car lst) (append atom (cdr lst)))))
用法:
> (append 'A '(B C D))
'(B C D A)
相当于
> (cons 'B (cons 'C (cons 'D (list 'A))))
'(B C D A)
答案 1 :(得分:0)
您可以将A添加到列表的末尾,如下所示:
(append '(B C D) (list 'A)))
Append需要list参数作为第一个参数。第二个参数不必是列表,但如果您执行(B C D . A)
(append '(B C D) 'A))