扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
对于斐波那契数,若是采用递归的算法,每个递归调用都将触发另外两个递归调用,而这两个中调用任意一个还会触发另外两个的调用。递归调用的时间复杂度O(2^N),空间复杂度为O(N),所以在计算略大的数会花费一定的时间和空间。递归程序如下:
#includeusing namespace std; unsigned long long Fib(size_t num) { if (num < 2) { return num; } else return Fib(num - 1) + Fib(num - 2); } int main() { unsigned long long ret = Fib(10); cout << ret << endl; system("pause"); return 0; }
用迭代方法计算第N 个斐波那契数,时间复杂度O(N),空间复杂度O(1),程序如下:
#includeusing namespace std; unsigned long long Fib(size_t num) { unsigned long long first = 0; unsigned long long second = 1; unsigned long long sum = 0; if (num < 2) return num; else for (size_t i = 2; i <= num; i++) { sum = first + second; first = second; second = sum; } return sum; } int main() { unsigned long long ret = Fib(10); cout <<"Fibonacci(10)="<< ret << endl; system("pause"); return 0; }
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流