Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
请帮助我使用 Scheme 中的代码,基本上我需要的是如下一个函数(附加),它接受一个原子和一个列表并将元素添加到列表的末尾。
例子:
(append 'A '(B C D)) -> (B C D A)
递归方法是:
(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)
您可以像这样将 A 添加到列表的末尾:
(append '(B C D) (list 'A)))
Append需要一个列表参数作为第一个参数。第二个参数不必是一个列表,但它会像(B C D . A)你一样显示出来(append '(B C D) 'A))
(B C D . A)
(append '(B C D) 'A))
我的例子