gpt4 book ai didi

java - 递归对服务器有什么影响?

转载 作者:行者123 更新时间:2023-12-02 06:08:44 25 4
gpt4 key购买 nike

我听说在服务器上运行递归代码会影响性能。这个说法有多真实?递归方法应该作为最后的手段吗?

最佳答案

递归可能比等效的迭代解决方案消耗更多的内存,因为后者可以优化为仅占用它严格需要的内存,但递归将所有局部变量保存在堆栈上,因此占用的内存比严格需要的多一点。这只是内存有限的环境中的问题(这并不是罕见的情况),并且对于可能非常深的递归(几十个递归分支最多占用几百个字节,无法影响服务器的内存占用),因此“最后的手段”是一个过高的出价。

但是,当分析显示占用空间影响很大时,您绝对可以执行的一项优化重构是 recursion removal ——这是几十年前学术文献中的一个热门话题,但手动完成通常并不难(特别是如果您将所有方法(无论是递归方法还是其他方法)保持得相当小,正如您应该做的那样;-)。

关于java - 递归对服务器有什么影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2267502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com