为什么递归斐波那契O(2 ^ n)而不是O(n * 2 ^ n)的时间复杂度?

问题描述 投票:1回答:1

我知道递归树中有O(2 ^ n)个叶子,但是树上的每条路径都需要O(n)的时间来计算。所以时间复杂度不应该是O(n * 2 ^ n)吗?

recursion time-complexity fibonacci
1个回答
0
投票

在此网站中,时间复杂度被解释为:here

如果数学解释还不够,请考虑使用递归树选项构建向量,您将获得一个包含2 ^ n个元素的向量,因此迭代的复杂度为2 ^ n,因为您一次迭代了所有树而不N遍全树。

© www.soinside.com 2019 - 2024. All rights reserved.