gpt4 book ai didi

recursion - 如何在 Scheme/Racket 中使用尾递归实现追加过程?

转载 作者:行者123 更新时间:2023-12-04 02:30:01 26 4
gpt4 key购买 nike

<分区>

很长一段时间以来,我都在尝试使用尾递归(迭代)在 Racket 中实现追加过程。

到目前为止我做的最好的解决方案是:

(define (my-reverse lst)
(define (iter lst reversed)
(if (null? lst)
reversed
(iter (cdr lst) (cons (car lst) reversed))))
(iter lst '()))

(define (append-iter el lst)
(my-reverse (cons el (my-reverse lst))))

(append-iter 4 '(1 2 3)) ; (1 2 3 4)

我的问题是有没有更好的实现方式?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com