Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
LLVM 尾调用优化
以下是我对事情的理解 当函数 f 调用自身是其最后一个动作时 它是尾递归的 通过形成循环而不是再次调用函数 可以显着优化尾递归 函数的参数已就地更新 并且函数体再次运行 这称为递归尾调用优化 LLVM 在使用 fastcc GHC 或 Hi
LLVM
tailrecursion
LLVMIR
iPhone 开发——performSelector:withObject:afterDelay 还是 NSTimer?
重复方法调用 或消息发送 我猜合适的术语是 x秒 是使用 NSTimer NSTimer 的 ScheduledTimerWithTimeInterval target selector userInfo repeats 还是让该方法在最后
iphone
NSTimer
tailrecursion
repeat
在 Prolog、尾递归中计算斐波那契数列
我想在 Prolog 中以递归尾部模式计算斐波那契数列 fibonacci 0 0 fibonacci 1 1 fibonacci N Result fibonacci N 1 0 fibonacci N Result Count Coun
Prolog
Fibonacci
tailrecursion
为什么 .NET/C# 不优化尾调用递归?
I found 这个问题 https stackoverflow com questions 340762 which languages support tail recursion optimization关于哪些语言优化尾递归 为什么
c
NET
Optimization
tailrecursion
阿克曼函数的这种实现可以称为尾递归吗?
我用 C 语言编写了以下代码 我们可以将其称为尾递归实现吗 include
c
memory
recursion
tailrecursion
ackermann
Clojure:避免埃拉托斯特尼筛中的堆栈溢出?
这是我在 Clojure 中实现的埃拉托斯特尼筛法 基于 SICP 流课程 defn nats from n iterate inc n defn divide p q zero rem q p defn sieve stream lazy
Clojure
primes
tailrecursion
sieveoferatosthenes
访问Scheme中的调用堆栈深度
为了演示尾递归的有效性 我想要一种在Scheme中动态访问调用堆栈深度的方法 有没有办法做到这一点 如果没有 有没有办法在其他主要函数语言 OCaml Haskell 等 中做到这一点 Racket 允许您在调用堆栈中存储值 您可以使用它来
functionalprogramming
SCHEME
tailrecursion
callstack
尾递归是否一定需要累加器?
例如 由于以下函数没有累加器 它仍然是尾递归吗 belong Ord a gt a gt a gt Bool belong a False belong a h t a h True otherwise belong a t 函数中的所有计
Haskell
recursion
tailrecursion
是否可以使用连续传递样式将此递归函数转换为尾递归函数?
我最近写了一个ETL 效果很好 我想提醒自己如何使用免费的 monad 因此想将我的 ETL 转换为这样的 注意 我的目的不是写一个更好的 ETL 而是让自己重新熟悉免费的 monad 在重新学习自由单子如何工作时 我偏离了这个问题的主题
recursion
F
monads
tailrecursion
如何创建一个尾递归方法,该方法也可以以非尾递归方式引用自身
假设我有一种用于长时间运行的计算的机制 可以暂停自己以便稍后恢复 sealed trait LongRunning R case class Result R result R extends LongRunning R case clas
scala
recursion
tailrecursion
这里使用尾递归有什么好处?
我一直在阅读描述如何通过使用尾递归版本来降低快速排序的空间复杂度的文章 但我无法理解这是怎么回事 以下是两个版本 QUICKSORT A p r q PARTITION A p r QUICKSORT A p q 1 QUICKSORT A
Algorithm
QuickSort
tailrecursion
F# 中元组的不完整模式匹配
我定义一个点 type TimeSeriesPoint lt T gt Time DateTimeOffset Value T 和一系列 type TimeSeries lt T gt TimeSeriesPoint lt T gt lis
F
patternmatching
tailrecursion
guardclause
什么推理导致“包含递归定义的序列表达式编译不正确”
问题尽管尾调用位置存在堆栈溢出 但仅限 64 位 https stackoverflow com q 35751350 1243762导致发现一个bug https github com Microsoft visualfsharp iss
F
tailrecursion
tailcalloptimization
哪些 C++ 编译器(如果有)进行尾递归优化?
在我看来 在 C 和 C 中进行尾递归优化都可以很好地工作 但在调试时我似乎从未看到表明这种优化的帧堆栈 这很好 因为堆栈告诉我递归的深度 不过 优化也会很好 有 C 编译器进行此优化吗 为什么 为什么不 我该如何告诉编译器去做呢 对于 M
c
Optimization
tailrecursion
这是尾递归吗?
我试图找到尾递归的例子 但我真的没有看到常规和尾递归之间的区别 如果这不是尾递归 有人能告诉我为什么不是吗 public static long fib long index assume index gt 0 if index 0 Bas
Java
recursion
computerscience
Fibonacci
tailrecursion
如何查明 Prolog 是否执行尾调用优化
使用SWI Prolog Win x64 的开发版本 我为 a 编写了一个 DCG 谓词确定性词法分析器 托管在 github 上 https github com sebgod goldparser prolog 因此所有外部谓词都没有留
Prolog
tailrecursion
dcg
tailcalloptimization
如何在 Java 中递归地从 N 元素集中生成所有 k 元素子集
所以我陷入了试图从给定的 N 元素集中找到所有 k 元素子集的问题 我知道使用公式 C n k C n 1 k 1 C n 1 k 的 k 子集总数是多少 我也知道如何做到这一点以迭代的方式 但是当我尝试思考递归解决方案时 我陷入了困境 谁
Java
recursion
combinatorics
combinations
tailrecursion
在尾递归函数中使用管道时出现堆栈溢出异常
我有一个简单的游戏循环实现 let gameLoop gamestate let rec innerLoop prev gamestate let now getTicks let delta now prev gamestate gt r
F
tailrecursion
什么是尾递归?
在开始学习 lisp 时 我遇到了这个术语尾递归 它到底是什么意思 考虑一个将前 N 个自然数相加的简单函数 例如 sum 5 0 1 2 3 4 5 15 下面是一个使用递归的简单 JavaScript 实现 function recsu
使用尾递归实现javascript函数
我有一个代表树的平面数组 我想使用尾递归构建一个嵌套对象 我有以下代码可以运行并生成所需的输出 但我不确定它是否是尾递归的正确实现 请指教 const myArray id root id 0 parent root id 1 parent
javascript
recursion
tailrecursion
1
2
3
4
»