建议使用递归算法计算n个立方体在时间和空间效率方面的总和?比较非递归?建议使用递归算法计算n个立方体在时间和空间效率方面的总和?
0
A
回答
0
你究竟是什么意思?总结前n个立方体最好通过计算(n^2 *(n + 1)^ 2)/ 4来完成,但是如果给出一个数列表来对它们的立方体进行求和,那么这并不是一个可选方案。
如果您使用的是尾部调用优化的语言,则建议使用尾部调用递归实现。如果你不这样做,如果你更容易推理(组织代码的一个非常重要的方面),那么编写递归函数仍然值得。但请记住,深度n的递归将取决于您的语言,编译器等,从4 * n到至少几个100 * n字节的内存,并且堆栈空间不是无限的。
我会去大多数语言的循环。对于大n而言,因为它更节约资源,对于小n而言,因为我觉得比递归版本更容易阅读。但是这与我的个人背景和经验息息相关,对于您和其他任何需要使用您的代码的人来说,更容易完全不同。
0
这取决于你想完成什么。如果您希望它依赖于以前的结果,则可以使其递归。否则,我会建议让它不递归。
0
大多数编译语言有尾递归的简单情况拆除和这样将不会是一个问题。数学人员发现编写函数式语言更容易,递归对他们来说更自然。但是,您可以可以非常有效地写:
var sumOf0To10Cubes = Enumerable.Range(0, 10).Select(o => Math.Pow(o, 3)).Sum();
需要注意的是数学的人喜欢:
相关问题
- 1. 计算空间和时间一致性的有效方法
- 2. 计算N个功率的总和
- 3. 按小时计算的总和和计算百分比效率
- 4. 计算时间总和
- 5. 递归算法来计算平方根,立方根
- 6. 递归算法的时间使用
- 7. 方法时间计算
- 8. 计算T(n)?算法效率(Python)
- 9. 最好的大O时间效率总是与最佳相同递归解决方案的空间效率?
- 10. python时间间隔算法总和
- 11. 计算递归算法T(n)的时间复杂度= T(K)+ T(NK)
- 12. 使用SQL Server计算一个地方的总时间datetime
- 13. 计算求和的方法N
- 14. 使用while循环和递归方法计算Pi(Java)
- 15. 如何计算此递归算法的时间复杂度
- 16. WebGL中的空间时间立方体
- 17. 使计算一个立方体
- 18. 用mysql方法计算日期时间,使用rails方法
- 19. 计算两个记录之间差异(时间)的总和 - mssql
- 20. 递归算法的时间复杂度
- 21. 递归X^N算法的时间复杂度
- 22. 从单个持续时间和比率计算两个持续时间的正确方法
- 23. vimeo时间使用率计算
- 24. 如何计算和仅有时间戳的总时间长度?
- 25. 递归时间序列分割算法
- 26. SQL优化计算总时间跨度的方法
- 27. 如何计算从一个地方到另一个地方旅行时的总距离和总时间
- 28. 使用C++中的尾递归函数计算列表总和
- 29. 使用递归计算Fibonacci序列的总和MATLAB
- 30. 计算总工作时间
如果立方体是连续的,所以建议使用封闭的形式。 ((n(n + 1)/ 2)^ 2) – rici 2014-09-11 07:44:24
总是建议不要使用递归 – 2014-09-11 08:12:08