gpt4 book ai didi

方案将元素添加到列表的末尾

转载 作者:行者123 更新时间:2023-12-04 11:27:33 25 4
gpt4 key购买 nike

这个问题不太可能对任何 future 的访客有帮助;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于互联网的全局受众。如需帮助使这个问题更广泛适用,visit the help center .




8年前关闭。




如何将元素添加到列表的末尾(在空之前)
当只有缺点,第一,休息,空?可以使用条件递归

最佳答案

想想你将如何实现 append (或者,更一般地说,考虑如何实现右折叠)。现在,如果您将一个列表附加到包含要添加的元素的单例列表中,那么您基本上已经附加了您的元素。

(显然,这是 O(n),所以不要以这种方式单独添加元素。)

这是使用右折叠的解决方案:

(define (append-element lst elem)
(foldr cons (list elem) lst))

以及使用 append 的解决方案:
(define (append-element lst elem)
(append lst (list elem)))

因此,如果您可以实现 foldrappend您自己,使用您列出的操作(很简单!尝试一下),您就可以开始了。

附言其实你可以实现 append使用右折叠:
(define (append lst1 lst2)
(foldr cons lst2 lst1))

但这仍然让您实现 foldr你自己。 ;-)(提示:这很容易。查看 my implementation of left-fold 以获取开始的想法。)

关于方案将元素添加到列表的末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12719164/

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