您的位置:首页 > 编程语言 > Java开发

JAVA中递归的概念

2017-08-30 15:43 169 查看
JAVA中递归的概念

说简单点就是方法调用自身方法。给你个例子:

猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

public class MonkeyPeach {
//利用递归的方法来求第一天的桃子数,输入参数为天数和当天的桃子数,输出为第一天桃子数
public static int getPeach_Num(int day, int peach_num) {
if (day == 1){
return peach_num;
}else if(day < 1 || peach_num < 0){
return 0;
}else{
return getPeach_Num(day - 1, (peach_num + 1) * 2);
}
}
public static void main(String[] args) {
System.out.println("第一天的桃子数:"+getPeach_Num(10, 1));
}

}

一道数列的规律题(使用递归解决)

/*

* 1,1,2,3,5,8,13,21,....

* 求解第30位数是多少

* */

public class demo1 {

    public static int compute(int n){

        if(n==1||n==2){

            return 1;

        }else{

            return compute(n-1)+compute(n-2);

        }

    }

    //测试

    public static void main(String[] args){

        System.out.print(compute(30));

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: