我正在学习DrRacket,我需要编写一个可以反转列表的程序。我有下面的内容,它正反转数字,但是以某种方式将它们嵌套在列表或其他内容中。
(define (reverse-list lon)
(if (empty? lon)
empty
(cons (reverse-list (rest lon))
(cons (first lon)
empty))))
输出((反向列表(列表1 2 3 4))):
(list (list (list (list empty 4) 3) 2) 1)
有人知道为什么输出不只是一个列表吗?
谢谢您的帮助!
因此,最终的工作是将第一个弊端替换为附加项以停止列表嵌套。
(define (reverse-list lon)
(if (empty? lon) empty (append (reverse-list (rest lon)) (cons (first lon) empty))))
问题已解决,不过感谢您的帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句