获取返回列表的函数内的列表的反转

时间:2015-04-08 06:07:51

标签: scheme lisp racket

所以我必须将奇数索引下的元素反转。

我写了一个函数来获取奇数索引元素,但我不知道如何使它们反向返回。

我必须在一个函数中执行此操作,并且必须是递归的。

1 个答案:

答案 0 :(得分:0)

您正在做的是获取第一个元素然后追加结果的其余部分。如果你以其他方式做到这一点,那么你就得到了反向列表。因此,您只需交换append的参数即可获得反向列表。

注意:代码花费O(n ^ 2)并为每个递归调用消耗堆栈。所以最好让它尾递归,然后你使用的Scheme实现优化它不消耗堆栈。