腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
显
式
堆栈
是否
比
递归
更好
recursion
、
linked-list
、
stack
我们可以使用
堆栈
和
递归
以相反的顺序打印链表。我的老师说使用
显
式
堆栈
更好
,因为
递归
也使用
堆栈
,但必须维护许多其他参数。即使我们使用stack中的std::stack,引用外部库不也很耗时吗?与使用
递归
解决方案相比,使用
显
式
堆栈
如何节省时间/空间?
浏览 34
提问于2020-10-21
得票数 0
回答已采纳
2
回答
迭代(基于
堆栈
)快速排序
比
递归
快吗?
optimization
、
recursion
、
quicksort
在不同的地方,我看到了使用
堆栈
实现快速排序
比
使用
递归
更快的说法。这是真的吗?我知道编译器通常擅长将
递归
转换为迭代,但是链接到页面上的注释要求它过于复杂,无法进行优化。 尽管如此,函数仍然是
递归
的,使用函数调用
堆栈
存储中间值l和h,函数调用
堆栈
存储其他簿记信息和参数。在辅助
堆栈
的帮助下,可以轻松地将上述函数转换为迭代版本。
浏览 2
提问于2014-07-15
得票数 1
1
回答
堆栈
限制和
递归
函数
c
、
recursion
、
linux-kernel
、
stack
、
stack-overflow
C程序使用
递归
来查找图的属性。由于
堆栈
空间太小,无法处理大型图。程序必须重新编码才能使用
显
式
堆栈
和循环。
递归
函数
是否
应该首先检查输入
是否
“适合”
堆栈
空间?在linux内核中
是否
有一个必须用“
显
式
”
递归
替换
递归
函数的例子?
浏览 0
提问于2018-04-14
得票数 2
回答已采纳
2
回答
使
显
式
堆栈
算法更快
c++
、
recursion
有一些
递归
算法可以很快地填充
堆栈
。一种解决方案是将
堆栈
显
式
化,从而将算法转换为迭代算法。 编辑:--我为其编写了一个
显
式
堆栈</e
浏览 2
提问于2012-10-24
得票数 2
回答已采纳
3
回答
在函数
式
语言中,编译器如何将非尾
递归
转换成循环以避免
堆栈
溢出(如果有的话)?
recursion
、
functional-programming
、
compiler-construction
、
compiler-optimization
、
tail-recursion
虽然我个人并不认为
递归
比
for循环更困难(而且通常更容易推理),但我意识到许多
递归
示例不是尾
递归
,因此不能使用简单的尾
递归
优化来避免
堆栈
溢出。,所有迭代循环都可以转换为
递归
,而这些迭代循环可以转换为尾
递归
,所以当上的答案表明,如果您想避免
堆栈
溢出,就必须自己
显
式
地管理
递归
到尾
递归
的转换,这让我感到困惑。看起来,编译器应该可以完成从
递归
到尾
浏览 4
提问于2017-05-04
得票数 3
回答已采纳
5
回答
有没有什么情况下我想要使用
显
式
堆栈
而不是
递归
?
language-agnostic
、
recursion
、
stack
有没有什么情况下,我想在我的算法中使用
显
式
的
堆栈
数据结构,而不是进行
递归
(使用调用
堆栈
)? 这样做有什么好处吗?我认为使用
显
式
数据结构会更有性能,因为它不需要方法调用,但话又说回来,这是微优化领域。
浏览 1
提问于2009-10-15
得票数 2
回答已采纳
1
回答
为什么将
递归
函数改为
显
式
使用
堆栈
可以避免
堆栈
溢出?
memory
、
recursion
尽管深度优先搜索可能被认为是一种
递归
算法,但
递归
并不是实现它的最佳方法。实际上,上面给出的代码会导致
堆栈
溢出,从而导致许多大型图失败。另一种实现是用
显
式
堆栈
替换
递归
堆栈
。我想知道这
是否
是因为
递归
函数使用内存的
堆栈
部分;但是
显
式
堆栈
,另一方面,在堆上声明的要大得多。
浏览 1
提问于2015-03-19
得票数 0
3
回答
在
递归
函数中堆上分配与
堆栈
上分配
c++
、
c
、
recursion
、
memory-management
、
embedded
当我定义
递归
函数时,在堆上分配局部变量,然后在函数返回之前清理它们
比
在
堆栈
上分配它们
更好
/更安全吗?嵌入
式
系统上的
堆栈
大小非常有限,当
递归
运行得太深时,存在
堆栈
溢出的危险。
浏览 10
提问于2015-10-02
得票数 2
回答已采纳
2
回答
关于
递归
的行业惯例是什么?或者我们如何知道我们
是否
应该完全避免
递归
?
java
、
algorithm
、
recursion
、
optimization
、
graph-algorithm
我确实理解
递归
的问题之一是
堆栈
深度,它会导致非常深的
递归
问题。此外,我知道
递归
可以被
显
式
堆栈
使用所代替,以避免此类问题。另一方面,
递归
允许简洁清晰的代码(我想说是漂亮的),如果我记得正确的话,它是在所有标准教科书中呈现算法的主要方式。我的问题
比
理论更切合实际:我的推理是,例如,如果我有一个小图视图--几千个顶点和每次遍历的最小处
浏览 2
提问于2020-07-15
得票数 0
3
回答
递归
函数和使用
堆栈
在内存使用方面的差异
algorithm
、
memory
、
graph
我想知道
递归
函数和使用
堆栈
在内存使用方面的区别。例如,对于更大的,这将是更有效的。
浏览 1
提问于2011-03-01
得票数 3
回答已采纳
1
回答
Scala会在没有蹦床的情况下在尾
递归
中
堆栈
溢出,这是哪种语言管理的?
scala
、
recursion
、
functional-programming
、
stack-overflow
我正在使用Scala学习函数
式
编程,并看到了Runar 的精彩演讲。
是否
有语言已经解决了这个问题: 尾
递归
消除(不使用蹦床或其他
显
式
构造)我知道Scala可以将自调用尾
递归
转换为循环,从而避免了
堆栈
的创建,但是也有
递归
,scala编译器不接受在3min-7m片段上显示的但是,很高兴知道Bjarnason提供的其他语言特性
是否
已经由某种语言来管理:类引用-
更好
的类型推断-无框函数引用。
浏览 1
提问于2014-06-17
得票数 0
回答已采纳
1
回答
使用
显
式
堆栈
将
递归
替换为迭代
recursion
、
stack
在
递归
函数调用中,它都是关于隐
式
堆栈
维护的,所以有可能用
显
式
使用
堆栈
的迭代函数来替换所有
递归
函数吗?
浏览 0
提问于2015-08-04
得票数 1
1
回答
递归
中的系统
堆栈
分配
java
、
operating-system
、
jvm
、
heap-memory
众所周知,几乎所有的
递归
函数都可以修改为迭代方法。假设我们以添加两个链表为例,这两个链表代表两个巨大的数字。这个问题可以通过
递归
(使用系统
堆栈
)或迭代(
显
式
堆栈
使用)方法来解决。我在这里的疑问是,如果我给出的jvm堆大小是-Xms2048MB -Xmx2048M,那么在
递归
方法中,它
是否
会将所有堆内存用于系统
堆栈
?AFAIK如果我使用
显
式
堆栈
,那么它会消耗所有这些内存。如果有人也能
浏览 3
提问于2013-07-09
得票数 1
回答已采纳
2
回答
基于
递归
的有序二叉树遍历与
堆栈
遍历的利弊
c++
、
c
、
recursion
、
stack
但是,我想知道使用
递归
函数遍历二叉树与使用
显
式
堆栈
的优缺点。 哪种方法在生产代码中使用得更广泛?
浏览 6
提问于2014-01-15
得票数 1
1
回答
使用
堆栈
的所有排列的非
递归
算法
python
、
algorithm
、
stack
我试图从Goodrich等人的“Python中的数据结构和算法”中解决以下问题:我的第一个想法是把n推到
堆栈
上,然后n- 1,.,直到我到达1。下一步将弹出
堆栈
中的下一个值("2"),并将其插入到到目前为止列表中的每个排列的每个可能位置中。因此,当
堆栈
再次为空时,将有一个包含数
浏览 2
提问于2022-07-11
得票数 0
回答已采纳
1
回答
传统的(基于
递归
的)深度优先搜索
比
基于
堆栈
的DFS更有效吗?
algorithm
、
search
、
recursion
、
depth-first-search
我正在查看@AndreyT对问题的回答,我有一个关于经典DFS与基于
堆栈
的DFS的内存效率的问题。其论点是,经典的回溯DFS不能通过简单的
堆栈
到队列替换从BFS创建。在通过
堆栈
到队列替换对DFS执行BFS时,您将失去经典DFS的空间效率。不是一个搜索算法专家(尽管我正在阅读它),我将假设这是“正确的”,并跟随它。 然而,我的问题实际上是关于整体内存效率。虽然
递归
解决方案确实具有一定的代码效率(我可以用几行
递归
搜索代码来完成更多的工作)和优雅,但它不是有一个内存(可能还有性能)“命中”,因为它是
递归
浏览 0
提问于2013-12-10
得票数 1
回答已采纳
10
回答
为什么异常被认为
比
显
式
错误测试
更好
?
programming-practices
、
exceptions
、
error-handling
if/else语句或例外
是否
认为使用异常
比
显
式
错误检查
更好
的编程实践,如果是,为什么?
浏览 0
提问于2012-09-24
得票数 49
回答已采纳
3
回答
这不是双重穿越吗?
haskell
、
functional-programming
、
traversal
在的“编程技巧”部分中,我发现了以下示例:count p = length . filter p 据说这是一个
更好
的替代方案。然而,这不是一种双重遍历,因此实际上
比
显
式
递归
函数更糟糕吗?GHC中的懒惰
是否
意味着这相当于优化后的一次遍历?哪个实现更快,为什么?
浏览 4
提问于2015-04-26
得票数 3
回答已采纳
2
回答
按序遍历任意大的二叉树
c#
、
.net
、
visual-studio-2010
、
binary-tree
C#、.NET 4.0、VS2010 我可以很容易地写一个
递归
函数,但是如果树是任意大的,我无论如何也找不到不会溢出
堆栈
的东西。
浏览 0
提问于2010-08-10
得票数 0
回答已采纳
5
回答
递归
与
堆栈
实现。为什么
递归
返回StackOverflow,而Stack不返回?
java
、
performance
、
recursion
、
stack
然而,我有多个项目,都集中在
递归
的使用上。我发现
递归
很有用,而且令人兴奋,我经常在我的个人项目中使用它。 为什么
浏览 5
提问于2014-03-16
得票数 13
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
算法一看就懂之“递归”
6 个新奇的编程方式,改变你对编码的认知
JS 深浅拷贝知多少
嵌入式开发:防御性编程可缓解不可预见的问题
CompletableFuture 的实现原理和使用场景?
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券