- Visual C++源码
- Visual Basic源码
- C++ Builder源码
- Java源码
- Delphi源码
- C/C++源码
- PHP源码
- Perl源码
- Python源码
- Asm源码
- Pascal源码
- Borland C++源码
- Others源码
- SQL源码
- VBScript源码
- JavaScript源码
- ASP/ASPX源码
- C#源码
- Flash/ActionScript源码
- matlab源码
- PowerBuilder源码
- LabView源码
- Flex源码
- MathCAD源码
- VBA源码
- IDL源码
- Lisp/Scheme源码
- VHDL源码
- Objective-C源码
- Fortran源码
- tcl/tk源码
- QT源码
f0608.cpp
资源名称:c.rar [点击查看]
上传用户:puke2000
上传日期:2022-07-25
资源大小:912k
文件大小:1k
源码类别:
C#编程
开发平台:
Visual C++
- //==================================
- // f0608.cpp
- // Fibonacci数列四种方法比较
- //==================================
- #include<iostream>
- #include<vector>
- #include<time>
- #include<cmath>
- using namespace std;
- //----------------------------------
- int fibo1(int n){
- if(n==0) return 0;
- if(n==1) return 1;
- return fibo1(n-1)+fibo1(n-2);
- }//---------------------------------
- int fibo2(int n){
- int a=0, c;
- for(int b=1,c,i=2; i<=n; ++i)
- c=a+b, a=b, b=c;
- return c;
- }//---------------------------------
- int fibo3(int n){
- vector<int> v(n+1,0); v[1]=1;
- for(int i=2; i<=n; ++i)
- v[i] = v[i-1]+v[i-2];
- return v[n];
- }//---------------------------------
- int fibo4(int n){
- return (pow((1+sqrt(5.0))/2,n)-pow((1-sqrt(5.0))/2,n))/sqrt(5.0);
- }//---------------------------------
- int main(){
- int a;
- clock_t start=clock();
- for(int i=1; i<5; ++i)
- a=fibo1(35);
- cout<<"Fibo1's time was: "<<(clock()-start)/CLK_TCK<<"n";
- start=clock();
- for(int i=1; i<5; ++i)
- a=fibo2(35);
- cout<<"Fibo2's time was: "<<(clock()-start)/CLK_TCK<<"n";
- start=clock();
- for(int i=1; i<5; ++i)
- a=fibo3(35);
- cout<<"Fibo3's time was: "<<(clock()-start)/CLK_TCK<<"n";
- start=clock();
- for(int i=1; i<5; ++i)
- a=fibo4(35);
- cout<<"Fibo4's time was: "<<(clock()-start)/CLK_TCK<<"n";
- }//====================================