tail-recursion

tail-recursion

文章 0 浏览 6

Scala 中是否可以保证尾递归优化?

假设我有以下代码 def foo(x:Int):Unit = { if (x == 1) println ("done") else foo(scala.util.Random.nextInt(10)) } 是否保证编译器进行尾递归优化…

平安喜乐 2024-12-16 21:35:43 2 0

Clojure 中 s 表达式列表的递归

为了了解一些背景,我正在学习 Clojure 以及更广泛的 Lisp 开发。在我的 Lisp 之路上,我目前正在学习“Little”系列,努力巩固函数式编程和基于递归…

画离情绘悲伤 2024-12-14 05:47:17 5 0

用函数式语言实现快速排序

我需要在 SML 中实现快速排序来完成家庭作业,但我迷失了。我以前不熟悉快速排序是如何实现的,所以我阅读了它,但我读到的每一个实现都是命令式的。…

萌酱 2024-12-12 15:10:41 8 0

这可以在 Prolog 中进行尾递归吗?

我正在学习 Prolog,作为练习,我正在尝试一个简单的数据库,该数据库计算给定数字之前的所有数字的总和(即 0=0, 1=1, 2=3, 3=6, 4 =10,...)。很简…

旧时模样 2024-12-11 12:46:47 5 0

尾递归问题

我们正在 Scala 中试验并行集合,并想检查结果是否有序。为此,我在 REPL 上编写了一个小函数来对我们正在生成的非常大的列表进行检查: def isOrdere…

隐诗 2024-12-10 22:09:46 8 0

退出拖尾文件 - 在 perl 中

我有这段代码,基本上是一个文件的尾部。 该文件每秒填充近 100 个条目。 open (MYFILE, 'output.txt'); for (;;) { while () { chomp; my $test=$_; …

守护在此方 2024-12-10 15:18:44 6 0

循环的尾部位置到底是什么?

Clojure 中 recur 的“尾部位置”的准确定义是什么?我认为这将是循环 S 表达式中的最后一项,但在下面的示例中,在我看来,以 (if ...) 开头的 S 表…

谎言 2024-12-10 09:23:32 4 0

如何使用堆栈将以下代码替换为非递归代码?

这是一个有限状态机: private int recursive(int rc, int pc, int sc) { for (;;) { Instruction actual = program[rc][pc]; switch (actual.type) {…

嘿咻 2024-12-10 01:14:40 4 0

C++ 中的尾递归优化代码

我想了解尾递归优化的影响,并想以尾递归优化的方式编写简单的阶乘函数。 是否可以在没有编译器支持的情况下在代码中执行此操作?…

空城仅有旧梦在 2024-12-08 15:11:38 4 0

如何在递归选择排序算法中调用类析构函数?

RecursiveSort::RecursiveSort(int myArray[], int first, int arraySize) { int smallest = first, j; if (smallest < arraySize) { smallest = firs…

假面具 2024-12-08 11:54:39 4 0

F# 与 OCaml:堆栈溢出

我最近发现了一个关于F# for Python程序员的演示,看完之后,我决定实现我自己解决了“蚂蚁难题”。 有一只蚂蚁可以在平面网格上走动。蚂蚁一次可以向…

野侃 2024-12-06 02:06:17 5 0

总是避免 Java 中的递归方法?

我记得应该始终避免在 Java 中使用递归方法调用。我认为原因是,将调用的方法保存在堆上所产生的开销不值得在实现中减少代码行数。 然而,最近有人告…

冷默言语 2024-12-05 19:30:56 5 0

没有累加器可以写这个吗?

我最初尝试在不进行尾递归的情况下编写此内容,根据 http://www.erlang。 org/doc/efficiency_guide/myths.html BEAM 自行完成。它有效,我只是想知道…

生来就爱笑 2024-12-04 20:09:38 4 0

我如何转换这个 scala 函数以进行优化

使用模式匹配确定列表的 lat 元素的代码: @tailrec def last_rec[A](list : List[A]) : A = { list match { case (x :: Nil) => x case (_ :: xs) =>…

我爱人 2024-12-04 09:54:36 5 0

尾递归?

我正在编写一个函数,它接受一个列表并返回列表中所有项目的平方和。调用 (1 2 3) 应该返回 14:(12 + 22 + 32)。 我有这个 sqsum 函数: (define (sq…

乞讨 2024-12-04 04:34:40 3 0
更多

推荐作者

李珊平

文章 0 评论 0

Quxin

文章 0 评论 0

范无咎

文章 0 评论 0

github_ZOJ2N8YxBm

文章 0 评论 0

若言

文章 0 评论 0

南…巷孤猫

文章 0 评论 0

更多

友情链接

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