Scheme新手求助:如何将输入列表转换为回文列表
解决方法
直接用Scheme的append函数将原列表和反转后的列表拼接即可,append的作用是把多个列表连接成一个新列表。
示例代码
- 直接拼接:
(append '(a b c) (reverse '(a b c)))
执行后会返回(a b c c b a),正好是你要的回文列表。
- 封装成可复用函数:
(define (make-palindrome lst) (append lst (reverse lst)))
调用方式:
(make-palindrome '(a b c)) ; 输出 (a b c c b a)
简单说明
reverse负责生成原列表的反转版本,append把原列表和反转列表按顺序拼接,两者结合就生成了包含原序列及其逆序的回文列表。
内容的提问来源于stack exchange,提问作者letmesleepplz
相关产品推荐
相关产品推荐

