首页 > 其他 > 详细

简单递归之我见

时间:2016-08-11 00:34:53      阅读:159      评论:0      收藏:0      [点我收藏+]
递归: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; }
 


简单递归之我见

原文:http://www.cnblogs.com/wuhui070470/p/5759144.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!