我必须使用以下输入编写函数:
((something1 . something2) (something1 . something2) ... (something1 . something2))
以及相应的输出:
((something2 . something1) (something2 . something1) ... (something2 . something1))
我不能使用vector
,for
,while
,set
,reverse
,set-list
,list-tail
,append
,length
,或任何目的与过程!
。
我知道这是错误的,但也许有人知道我的错误在哪里:
(define (odwroc-alfabet list)
(let loop ((list list))
(if (pair? list)
(cons ((cdar list) (caar list)))
list)))
只需使用map
:
(define (odwroc-alfabet lst)
(map (lambda (e) (cons (cdr e) (car e))) lst))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句