A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 人心如水 中级黑马   /  2014-6-24 19:32  /  920 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

。。。。

5 个回复

倒序浏览
- -你不如直接去百度?看看例子清晰一点…… 总结一下就是方法自身调用自身,最直观的应用是拿来做阶乘运算:比如
public  static int  f(int n){
if (n==1)
return 1;
else
return  n*f(n-1)
代码没考虑其他细节,只表述一下递归是个什么东西
}
回复 使用道具 举报
递归就是自己调用自己呗,但是递归一定要结束条件,不能无限制的自己调用自己
回复 使用道具 举报
函数调用自己本身,如斐波那契序列
public static long F(int n){
   if(n == 0 || n == 1)
       return 1;
   else
       retun F(n-1)+F(n-2);
}
回复 使用道具 举报
就是自己跟自己玩上了
回复 使用道具 举报
递归是一种重要的编程技术。该方法用于让一个函数从其内部调用其自身。一个示例就是计算阶乘。0 的阶乘被特别地定义为 1。 更大数的阶乘是通过计算 1 * 2 * ...来求得的,每次增加 1,直至达到要计算其阶乘的那个数。
计算阶乘的函数。如果传递了
// 无效的数值(例如小于零),
// 将返回 -1,表明发生了错误。若数值有效,
// 把数值转换为最相近的整数,并
// 返回阶乘。
function factorial(aNumber)  {
aNumber = Math.floor(aNumber);  // 如果这个数不是一个整数,则向下舍入。
if (aNumber < 0)  {  // 如果这个数小于 0,拒绝接收。
    return -1;
    }
      if (aNumber == 0)  {  // 如果为 0,则其阶乘为 1。
      return 1;
      }
        else return (aNumber * factorial(aNumber - 1));  // 否则,递归直至完成。
}
把这个程序好好理解。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马