tail-recursion

tail-recursion

文章 0 浏览 3

如何表达阶乘 n!使用 F# 函数、递归函数还是其他函数?

自然数(大于或等于 0 的任何数字)的阶乘是该数字乘以自身的阶乘减一,其中 0 的阶乘定义为 1。 例如: 0! = 1 1! = 1 * 0! 2! = 2 * 1! 3! = 3 * 2!…

演多会厌 2024-09-30 16:51:51 9 0

在 LISP 中使用尾递归的二项式系数

我想编写一个函数来使用尾递归查找 C(n,k),我将非常感谢您的帮助。 我已经达到了这个目的: (defun tail-recursive-binomial (n k) (cond ((or (< n …

我为君王 2024-09-30 15:18:46 9 0

如何在 Java 中递归地从 N 元素集中生成所有 k 元素子集

所以我陷入了试图从给定的 N 元素集中找到所有 k 元素子集的问题。我知道使用公式 C(n,k)=C(n-1, k-1)+C(n-1, k) 的 k 子集总数是多少,我也知道如何…

抚你发端 2024-09-30 11:50:17 6 0

递归开销——有多严重?

可能的重复: 递归比循环更快吗? 我首先接受了认真的 C 编程培训,大约15年前。我的雇主想要高度优化的代码来完成计算困难的任务。我记得不止一次被…

口干舌燥 2024-09-28 12:26:54 11 0

优化 Haskell 函数以防止堆栈溢出

我正在尝试创建一个函数,使用遗传算法递归地玩所有可能的井字游戏,然后返回一个元组(赢,输,平)。然而,当像这样调用时,下面的函数总是会溢出堆…

末蓝 2024-09-26 01:31:41 4 0

如何识别什么是尾递归,什么不是尾递归?

有时它很简单(如果 self 调用是最后一个语句,则它是尾递归),但仍然有一些情况让我感到困惑。一位教授告诉我“如果自调用后没有指令执行,那就是尾…

北音执念 2024-09-18 14:45:43 8 0

JavaScript 引擎尾部调用 (TCO) 是否经过优化?

我有一个用 JavaScript 实现的尾递归寻路算法,想知道是否有(所有?)浏览器可能会出现堆栈溢出异常。…

メ斷腸人バ 2024-09-17 21:15:38 7 0

将 seq 尾部递归复制到 F# 中的列表

我试图通过将序列的第一个元素递归地附加到列表来从序列构建列表: open System let s = seq[for i in 2..4350 -> i,2*i] let rec copy s res = if (s…

来日方长 2024-09-14 13:01:39 6 0

关于 Clojure 中堆和垃圾的初学者问题

我有一个关于 Clojure 的问题: 我试图通过 Project Euler 来学习该语言,但我不明白什么是幕后发生的事情:以下代码旨在使用返回 lim 之前的所有素数…

十六岁半 2024-09-13 23:14:36 8 0

结合记忆和尾递归

是否有可能以某种方式将记忆和尾递归结合起来?我目前正在学习 F#,理解这两个概念,但似乎无法将它们结合起来。 假设我有以下 memoize 函数(来自 真…

旧人 2024-09-13 17:38:00 14 0

这个序列表达式应该是尾递归的吗?

这个 F# seq 表达式对我来说看起来是尾递归的,但我遇到了堆栈溢出异常(启用了尾调用)。有人知道我错过了什么吗? let buildSecondLevelExpressions…

混浊又暗下来 2024-09-10 00:40:19 8 0

递归计算表达式

在上一个问题中,我被告知如何重写我的计算表达式,以便它使用尾递归。我重写了代码,但仍然遇到 StackOverflowException。为了找到问题,我使用状态 …

情话已封尘 2024-09-09 04:49:45 12 0

Java中的递归方法似乎只是“goto”该方法的第一行而不是实际进入下一个调用

我正在创建一个制造房间的工厂,它传递了一系列步骤和一个起始房间,它应该执行一个步骤,构建一个房间,然后用更少的步骤调用自己,并将新房间作为起…

半葬歌 2024-09-09 04:24:13 4 0

如何在(功能)F# 中创建递归数据结构值?

type: 的值如何 type Tree = | Node of int * Tree list 具有以函数方式生成的引用自身的值? 对于树的合适定义,结果值应等于以下 Python 代码中的 x…

不即不离 2024-09-06 03:33:43 8 0

Clojure:避免埃拉托斯特尼筛中的堆栈溢出?

这是我在 Clojure 中实现的埃拉托斯特尼筛法(基于关于流的 SICP 课程): (defn nats-from [n] (iterate inc n)) (defn divide? [p q] (zero? (rem q…

明月松间行 2024-09-04 19:19:48 12 0
更多

推荐作者

已经忘了多久

文章 0 评论 0

15867725375

文章 0 评论 0

LonelySnow

文章 0 评论 0

走过海棠暮

文章 0 评论 0

轻许诺言

文章 0 评论 0

信馬由缰

文章 0 评论 0

更多

友情链接

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文