斐波那契数列的运算时间
2014-03-18 18:26
176 查看
斐波那契数列,F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)
Fibonacci Sequence Calculator
硬件: I3 Cpu + 8G Ram
1.用C#递归计算:
2.用java递归计算:
c#怎么就用了2238ms呢,落后的原因是什么?
3.用javascript递归计算:
Fibonacci Sequence Calculator
硬件: I3 Cpu + 8G Ram
1.用C#递归计算:
static void Main(string[] args) { int n = 40; Stopwatch watch = new Stopwatch(); watch.Start(); int num = RecursionFibonacci(n); watch.Stop(); Console.WriteLine("n="+n); Console.WriteLine("num=" + num); Console.WriteLine("time=" + watch.ElapsedMilliseconds+"ms"); } static int RecursionFibonacci(int n) { if (n < 1) return 0; if (n == 1) return 1; return RecursionFibonacci(n - 1) + RecursionFibonacci(n - 2); }
2.用java递归计算:
package com.example.fibonacci; /** * Created by Administrator on 3/22/2014. */ public class Fibonacci { public static void main(String[] args){ int n=40; long startTime=System.currentTimeMillis(); int num=RecursionFibonacci(n); long endTime=System.currentTimeMillis(); System.out.println("n="+n); System.out.println("num="+num); System.out.println("time="+(endTime-startTime)+"ms"); } public static int RecursionFibonacci(int n){ if(n<1) return 0; if(n==1) return 1; return RecursionFibonacci(n-1)+RecursionFibonacci(n-2); } }
c#怎么就用了2238ms呢,落后的原因是什么?
3.用javascript递归计算:
<div> Fibonacci <input type="text" id="txtNum" value="40"/> <input type='button' id='btnFibonacci' value='Recursion' onclick="Do()" /> </div> <script type="text/javascript"> function RecursionFibonacci(n) { if (n < 1) { return 0; } if (n == 1) { return 1; } var num = RecursionFibonacci(n - 1) + RecursionFibonacci(n - 2); return num; } function Do () { var n = document.getElementById("txtNum").value; var beginDate = new Date(); var num = RecursionFibonacci(n); var time = new Date() - beginDate; alert("n=" + n + "; num=" + num + "; time=" +time+"ms"); } </script>
相关文章推荐
- hadoop参数优化,Mapreduce程序优化,减少运算时间
- 28335的浮点格式运算时间比用IQ的运算时间能快多少啊?
- SQL Server时间粒度系列----第8节位运算以及设置日历数据表节假日标志详解
- shell取系统时间做浮点运算,练习cut sed cat uniq
- Datediff函数 助你实现不同进制时间之间的运算
- php时间运算
- 时间运算,动态获取两年后的今天的值!
- 斐波那契数列的时间复杂度详释与改进方法
- 非常全面的php日期时间运算汇总
- swap:临时变量vs和交换vs位运算 时间对比
- java日期时间的运算
- 如何进行时间的加减运算
- js 时间函数 及相关运算大全
- 如何对时间进行简单加减运算
- jquery 时间运算、格式化的方法扩张
- java日期时间的运算
- 斐波那契数列递归算法和非递归算法以及其时间复杂度分析
- Python的时间运算
- 以斐波那契数列和二分查找为例——探究时间复杂度 和 空间复杂度