如何设计一个将两个列表合并为一个列表的函数。 第一个列表的第一个元素将是新列表的第一个元素,第二个列表的第一个元素将是新列表的第二个元素 (a,b,c,d,e,f) (g,h,i) 将是 (a,g,b,h,c,i,d,e,f,)
最佳答案
这是R6RS
中的纯函数式递归实现
(define (merge l1 l2)
(if (null? l1) l2
(if (null? l2) l1
(cons (car l1) (cons (car l2) (merge (cdr l1) (cdr l2)))))))
关于方案将两个列表合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12646888/