zoukankan      html  css  js  c++  java
  • js递归

     1 /*
     2         例如:1 + 2 + 3 + … + 100
     3         F(100) = F(99) + 100;
     4         F(99) = F(98) + 99;
     5         F(98) = F(97) + 98;
     6  7         F(2) = F(1) + 2;
     8         F(1) = 1;//递归结束
     9         F(n) = F(n-1) + n;
    10     */
    11     /*
    12         实现递归的三个步骤:
    13         1.    递归结束条件(明确的返回值)
    14         2.    F(n) 和 F(n-1)的关系,递归(循环)的语句
    15         3.    递归函数必须要有返回值。
    16     */
    17     /*
    18         100! = 1 * 2 * 3 * ... * 100;
    19     */
    20 
    21     /*
    22     function sum(n) {
    23         if(n == 1) return 1;//计算结束
    24         return sum(n-1) + n;
    25     }
    26     var s = sum(100);
    27     console.log(s);
    28     */
    29 
    30     function jc(n) {
    31         if(n == 1) return 1;
    32         return jc(n-1) * n;
    33     }
    34     console.log(jc(6));
    35 
    36     /*
    37         F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)
    38         0 1 1 2 3 5 8 13...
    39     */
    40     function f(n) {
    41         if(n == 0) return 0;
    42         if(n == 1) return 1;
    43         return f(n - 1) + f(n - 2);
    44     }
    45     console.log(f(7));
  • 相关阅读:
    请求参数的中文乱码问题
    MySql索引与优化
    Android 兼容包
    Mysql 主从(转)
    解决tomcat一闪而过(转)
    log4j
    支付相关
    通过maven添加quartz
    linux命令学习之:chmod
    Nginx特点及其配置
  • 原文地址:https://www.cnblogs.com/guangyan/p/6684672.html
Copyright © 2011-2022 走看看