问题标签 [fibonacci]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 从 C 中的斐波那契数列返回一个特定的数字
我正在编写一个 C 程序来计算斐波那契数列中的特定数字,尽管我无法将序列作为数组返回......
我究竟做错了什么?
我也得到错误:
?
c++ - 计算斐波那契数的线程程序
我正在尝试用 C++ 编写一个程序来计算斐波那契数列。我创建了一个执行计算和输出的线程。但是我的 for 循环中似乎没有任何东西被执行。谁能看看我的代码并告诉我我可能做错了什么?
c++ - 在 C++ 代码中计算斐波那契数
我的问题是:我有一个矩阵。我需要为该矩阵中的每个条目计算相应的斐波那契数,并将这些值返回到另一个矩阵中。我不断收到 C2109“下标需要数组或指针类型”,我知道它来自哪里,我知道它的含义,但我不知道如何
- 修理它
- 让我的代码工作。
现在,它什么也做不了。我不确定我是否从我的斐波那契函数返回任何值,或者在我的主函数中正确调用它。我已经修改了它原来的样子。这是我的新代码:
任何帮助表示赞赏!
algorithm - 逆斐波那契算法?
有几十种方法可以计算任意 n 的 F(n),其中许多具有很好的运行时间和内存使用率。
但是,假设我想问相反的问题:
给定 n > 2 的 F(n),n 是多少?
(由于 F(1) = F(2) = 1 存在 n > 2 限制,并且没有明确的逆)。
解决这个问题的最有效方法是什么?通过枚举斐波那契数并在达到目标数时停止,在线性时间内很容易做到这一点,但是有没有比这更快的方法呢?
编辑:目前,此处发布的最佳解决方案使用 O(log n) 内存在 O(log n) 时间内运行,假设数学运算在 O(1) 中运行并且机器字可以在 O(1) 空间中保存任何数字. 我很好奇是否可以降低内存要求,因为您可以使用 O(1) 空间计算斐波那契数。
list - Scalas (a,b).zipped(或 Tuple2.zipped)概念使用流/无限列表
这是我认为 scala 中斐波那契数的正确且有用的定义:
但是,我收到以下错误:
我猜 zipped 不能与流一起正常工作?关于如何使这项工作的任何建议,或者为什么这不(不应该?)工作?
c - 计算斐波那契数列的第 n 个数,其中 n 在命令行中输入
我想编写一个程序来计算斐波那契数列的第 n 个数字,我已经使用 printf 和 scanf 完成了。但我希望更改我的程序,以便在命令行输入序列号,而不是在程序提示时输入。这就是我想出的。它可以编译,但是当我运行它时它崩溃了……不知道为什么。任何建议,将不胜感激。
这是一个使用迭代计算斐波那契代码的第 n 个数字的程序。我已经这样写了:您必须在命令行 argv[1] 中输入您希望计算的序列号。然后程序接受这个命令行参数并在 while 循环中使用它,并打印这个数字。
arrays - 修改了斐波那契字符串数组
可能我上次的作业理解错了,实际问题描述应该是这样的:
我有一个数组:A B AB BAB ABBAB BABABBAB
数组中每一项的数量基于斐波那契数。
将第 n 个字符串和第 n+1 个字符串放在一起,然后生成第 n+2 个字符串:
BABABBAB = BAB + ABBAB
那么从最后一个字母算起的第 n 个术语的第 x 个(例如 10^16 个)字母是 A 还是 B?例如。第 6 个字母是 B,不仅在第 6 个学期BABABBAB
,而且在以后的学期ABBABBABABBAB
第 7 个字母在第 6 项中是 A,BABABBAB
在后面的项中也是 -ABBABBABABBAB
最鼓舞人心的消息是有人有 Θ(1) 解。
如果 [x / g] * g >= x - 1 则为 B,否则为 A。g 是中庸之道。
但他或她没有解释为什么它有效。
assembly - 显示斐波那契数列的前 24 个值
我将如何编写一个程序,以汇编语言显示斐波那契数列中的前 24 个值?
如果有人可以帮助我,我将不胜感激,我对汇编中的代码感到困惑。
c - 如何正确地使这个循环显示斐波那契数列的前 40 位?
据我所知,这看起来应该可行。
前两个元素设置为 1(我忽略了第一个 0)。for 循环应该遍历数组,并且由于斐波那契数等于前面两个数的总和,我想将它们相加,然后显示它们。
输出都是2s,我不太清楚为什么。
注意:我不是直接寻找答案,而是一种我可以自己解决的方法。
java - java中斐波那契函数的尾调用优化
我正在研究 Tail call recursion 并遇到了一些提到的文档。Sun Java 没有实现尾调用优化。我编写了以下代码以 3 种不同的方式计算斐波那契数:1. 迭代 2. 头递归 3. 尾递归
在运行这个程序时,我得出了一些结果:
- 对于 n>50,Head Recursive 方法无法完成。程序看起来像挂了。任何想法,为什么会发生这种情况?
- 与头递归相比,尾递归方法花费的时间要少得多。有时比迭代方法花费的时间更少。这是否意味着java在内部做了一些Tail调用优化?如果是这样,为什么我会在 n > 5000 时给出 StackOverflowError?
系统规格:
英特尔酷睿 5 处理器,
视窗XP,
32 位 Java 1.6
JVM 的默认堆栈大小。