• 简单递归之我见


    递归:1、 就是函数自己直接或间接的调用自己。
         也就是说最终要回到自己本身。
       2、 就递归而言最重要的就是跳出结构. 因为跳出了才可以有结果
         也就是说要有个if return语句。也同时就是临界条件。
       3、 递归思想就是将一个问题转换为一个已解决的问题来实现
         也就是说 假定递归函数已经写好。将最后前后项的关系写出来。最后递归到已解决的问题(正常情况下就是给定的if结果中)
    例:
    1-100:
    function foo( n ) {
        if ( n == 1 ) return 1;
        return n + foo( n - 1 );
    }
    例:
     Fibonacci 数列: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …
    求其第 n 项.
    function fib( n ) {
        if ( n == 0 || n == 1 ) return 1;
        return fib( n - 1 ) + fib( n - 2 );
    }

    ## 求幂
    
    求幂就是求 某一个数 几次方
    
    2*2 2 的 平方, 2 的 2 次方
    
    求 n 的 m 次方
    
    最终要得到一个函数 power( n, m )
    
    n 的 m 次方就是 m 个 n 相乘 即 n 乘以 (m-1) 个 n 相乘
    
    function power ( n, m ) {
        if ( m == 1 ) return n;
      if ( m==0 ) return 1; return power( n, m - 1 ) * n; }
     


  • 相关阅读:
    MapReduce测试进度
    MapReduce实验进度
    Hive安装心得及教程分享
    MapReduce实验进程
    个人课程总结
    最长单词链
    用户体验评价
    SSMS无法新建查询问题解决办法征集
    寻找“水王”
    算法和数据结构
  • 原文地址:https://www.cnblogs.com/wuhui070470/p/5759144.html
Copyright © 2020-2023  润新知