第一种方法:递归

function fibonacci(n){
if (n==0){
return 0;
}else if (n==1){
return 1;
}
return fibonacci(n-1)+fibonacci(n-2);
}

网上现有的方法是:

function fibonacci(n){
if (n==1||n==2){
return 1;
}
return fibonacci(n-1)+fibonacci(n-2);
}

这样做有个不足之处,n取值必须大于0.

第二种方法:循环,非递归

function fibonacci(n){
var a = 0, b = 1, num = 0;
if (n==0){
return 0;
}else if(n==1){
return 1;
}
for(var i=1;i<n;i++){
num = a + b;
a = b;
b = num;
}
return num;
}

网上现有方法不含有判断部分,n取值需大于1.

最新文章

  1. IDEA+weblogic部署运行项目
  2. DL论文
  3. 笔记本中的archlinux调节亮度
  4. Codeforces Round #229 (Div. 2) C. Inna and Candy Boxes 树状数组s
  5. 代码实现UI控件
  6. 二模 (8) day1
  7. VBA删除表格最后一行
  8. 使用ListView 时,遇到了 Your content must have a ListView whose id attribute is &#39;android.R.id.list&#39; 错误
  9. 理解和使用NT驱动程序的执行上下文
  10. POJ 1584 A Round Peg in a Ground Hole
  11. Windows 2008 R2_NLB网络负载均衡(图文详解)(转)
  12. PowerEdge R430 机架式服务器安装( Ubuntu server 14.04.1 、PHP5.5.9、PHP-redis2.8、Phalcon3.1)
  13. java ssl 使用不同的加密套件,对性能影响很大
  14. exp和imp导入导出时表空间问题【未完】
  15. ubuntu如何安装或更换内核
  16. 关于SQL视图的创建和使用方法
  17. Thinkphp5.0整合个推例子
  18. warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
  19. java 异常 throw
  20. Git直接拉取远程分支

热门文章

  1. RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.7 版本发布
  2. FlashFXP5_gr坑爹的故事
  3. svg学习(八)polyline
  4. C++ DateTime 结构
  5. Android Studio的git功能的使用
  6. SSIS Error The Execute method on the task returned error code 0x80131621
  7. Dynamics AX 2012 R3 Demo 安装与配置 - 导入测试数据 (Step 4)
  8. Java 中System里getProperty(something)
  9. 动态的计算行高 加载数据源 有多少显示多少 tableView 包含 colloctionView 显示复杂的界面写法
  10. poj 3617 Best Cow Line