0
我有这个想法,我只是有点卡在执行。我需要做的是交换每两对清单。例如(1 2 3 4 5 6)变成(2 1 4 3 6 5)用球拍交换球对
我已经交换了前2对工作,而我打算做的是交换前2个,然后是下2个等等,然后附加它。我不知道如何去做这件事。任何帮助表示赞赏,这是我的代码到目前为止。我知道那里可能需要递归,但是如何将这些对设置为一个变量,以便我可以稍后追加,或者追加已经这样做?
(define (swapPairs L)
(cond ((null? L)
'())
(cons (cadr L) (cons (car L) (cddr L))))
(define (appendTo L x)
(if (null? L)
(cons x L)
(cons (car L) (appendTo (cdr L) x))))
交换谢谢,这解释了它!赞赏清楚详细的答案:) – user2318083