您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Java中的斐波那契序列花费太长时间?

Java中的斐波那契序列花费太长时间?

对于n > 2,您的getSum(n)递归调用会两次调用自身。这些调用中的每一个都可以进一步递归。方法调用的总数缩放为2^n,并且2^50一个非常大的数字。这种糟糕的缩放比例反映了以下事实:简单的递归方法最终会不必要地多次重新计算相同的结果(例如fib(4)),这就是为什么您的程序随着速度的增加而如此之快地减速n

在某一点之后获得的负返回值是由于超出数据类型的限制引起的int。您可能会使用更大的数据类型获得更大的限制long。如果这还不够,那么您将需要执行像这样的操作BigInteger,而这会大大降低性能

java 2022/1/1 18:28:31 有342人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶