recursion相关内容

我可以在球拍中打印列表的替代元素吗?

例如,如果我创建了一个名为odd-places的函数,它的工作方式应该如下所示 (odd-places '(p q r s t 1 2)) = (p r t 2) 是否可以使用递归完成此操作? 推荐答案 一个小附录:使用此函数,您可以选择在某个项目再次包含在结果列表中之前,应跳过列表中的多少个项目。 (define (nth-places n lst [i 0]) ..
发布时间:2022-03-27 16:33:30 其他开发

尾递归映射函数球拍

racket中的map函数接受一个函数和一个列表,并递归地将该函数应用于列表中的每个项目。我正在尝试将映射转换为尾递归函数,如何才能做到这一点? 推荐答案 您卡在哪里?您可以使用内部loop过程定义您自己的map过程。 (define (map f in) (define (loop out lst) (if #|exit condition here|# ..
发布时间:2022-03-27 16:11:40 其他开发

在重复执行的递归函数中捕获挡路

我有一个递归函数,用于从AWS上的CodeCommit存储库获取SQL文件并按顺序运行它们。在运行下一个文件之前,我们需要等待前一个文件完成。如果其中一个sql文件失败,我需要Catch挡路返回有关失败的文件的信息。 我现在看到的代码是,对于repo中的每个sql文件,捕捉挡路重复一次。根据我的理解,“抛出”语句应该返回到最初调用该函数的函数的Catch挡路。有人能指出我在这里做错了什么吗? ..
发布时间:2022-03-24 17:35:33 前端开发

尝试从数组生成所有排列,但仅获得很小的子集

编辑:我会尽量在这个问题中说得更清楚: 我有这个数组[1,2,3],我想生成所有排列,如下所示: 1,2,3|1,3,2|3,2,1|3,1,2|2,3,1|2,1,3|1|1,2|1,3|2|2,3|2,1|3|3,1|3,2 请注意,我们还需要一位数和两位数的排列,建议的副本中未涉及这一点。 我尝试使Python代码适应JavaScript: function m ..
发布时间:2022-03-23 18:03:44 前端开发

递归插入链表中的节点,给定位置和值

我正在实现一个仅包含值的链表,并尝试利用递归遍历该列表以在列表中的特定位置插入特定值。我已经解决了如何使用WHILE循环来完成此任务,但是,在将其转换为递归函数时遇到问题。 insert方法包含值和索引作为参数,如果位置为0,则函数会将头节点设置为新值。否则,我创建一个设置为节点头部的new_node变量,当位置大于1时,new_node设置为下一个节点,index减1。我可以使用此方法插入 ..
发布时间:2022-03-22 12:16:15 Python

二叉搜索树遍历-查找最接近的值

我正在做一个AlgoExpert挑战,我已经花时间自己解决它了,看了关于它的视频讲座,我觉得我理解得很好,但我的递归和树遍历技能现在相当低(这就是我正在做它的原因)。 这是提示符 编写一个接受二叉搜索树(BST)和目标整数的函数 值,并返回与BST中包含的该目标值最接近的值。每个BST节点都有一个整数值、一个左子节点和一个右子节点。其子节点本身就是有效BST节点,或者无/空 目标:1 ..
发布时间:2022-03-17 12:00:20 前端开发

修复OCaml中的数据类型

如何使用OCaml或SML表示来自Haskell的以下数据类型? newtype Fix f = In (f (Fix f)) 推荐答案 我已经answered this question on the mailing-list了(我必须说,您在两个不同的地方问这个问题没有几天的好时间,我有点不高兴,因为这可能会引起重复的努力),但是让我们在这里重复一下。 这里有一个困难,因为O ..
发布时间:2022-03-04 15:12:08 其他开发

如何在C++中将基本嵌套循环转换为递归

我正在学习递归,我正在寻找一个简单的示例,说明如何将这个基本的嵌套循环转换为递归函数。感谢您的意见: 编辑:我提供了转换嵌套循环的失败尝试。我还不能想象递归过程,但我的研究表明这就是递归格式。它不会显示输出,因为我不确定将COUT行放在哪里。 嵌套循环: #include "stdafx.h" #include #include #include ..
发布时间:2022-02-23 13:16:14 C/C++开发

在Java中递归删除节点链表

我正在学习数据结构,并试图理解Java中的链表。我的问题是我在递归删除给定索引处的节点时遇到了问题。我的目标是得到O(Logn),而不是使用循环,最终得到O(N)。 public class LinkedList { Node head; int index=0; Node temp; Node prev; public LinkedList(Node ..
发布时间:2022-02-22 14:44:35 Java开发

没有递归光线追踪就不可能实现反射和折射?

我正在使用 GLSL 计算着色器编写基于 GPU 的实时光线追踪渲染器.到目前为止,它工作得非常好,但是当涉及同时具有反射和折射时,我偶然发现了一个看似无法解决的问题. 我的逻辑告诉我,为了在物体(例如玻璃)上产生反射和折射,光线必须分成两股,一条光线从表面反射,另一条光线通过表面折射.然后,这些光线的最终颜色将根据某些函数进行组合,并最终用作光线源自的像素的颜色.我遇到的问题是我无法在着色 ..
发布时间:2022-01-30 16:22:13 C/C++开发

递归列出Java中的文件

如何递归列出 Java 目录下的所有文件?该框架是否提供任何实用程序? 我看到了很多 hacky 实现.但没有来自框架或 nio 解决方案 Java 8 提供了一个很好的流来处理树中的所有文件. Files.walk(Paths.get(path)).filter(文件::isRegularFile).forEach(System.out::println); 这提供了一种自然的 ..
发布时间:2022-01-30 09:39:07 Java开发

包含头文件是如何发生的?

我在工作区中有一个带有 *.c 和 *.h 文件的纯 C 代码. 我有一个头文件 1.h 声明一些结构为 结构 my1{诠释一个;....}我的T; 但是当我尝试在另一个头文件 2.h 中声明一个 struct my1 类型的变量时,如下所示:- struct my1 variable1; 它在这个声明点给出错误. 看起来 my1 在 2.h 文件中未定义. 在文件 1.h ..
发布时间:2022-01-25 19:15:04 其他开发

在 JavaScript 中使用递归获取范围数

我正在尝试使用递归来获取数字范围.有人可以向我解释为什么它不起作用吗? 函数范围(x,y){变种结果 = [];如果(x === y){返回结果;}返回结果.push(范围(x + 1,y));}范围(1,5); 解决方案 试试这个: 函数 rangeOfNumbers(startNum, endNum) {if (startNum - endNum === 0) {返回[开始编号];} ..
发布时间:2022-01-24 19:52:58 前端开发