大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
Java 递归方法
1.说明
定义:
一个方法体内调用它自己
- 方法递归是一种隐式的循环,它会重复的执行某段代码,但这种重复执行无须循环控制
- 递归一定要向着已知的方向递归,否则这种递归就变成了无穷递归,类似于死循环
2.code 举例
public class RecursionTest {
public static void main(String[] args) {
RecursionTest x = new RecursionTest();
System.out.println(x.getSum(100));
System.out.println(x.getSum1(100));
System.out.println(x.getF(10));
System.out.println(x.Fibonacci(6));
}
// 计算1-n所有自然数的和
public int getSum(int n) {
if(n ==1) {
return 1;
}else {
return n + getSum(n -1);
}
}
// 计算1-n所有自然数的积
public int getSum1(int n) {
if(n ==1) {
return 1;
}else {
return n * getSum(n -1);
}
}
// 已知一个数列 f(0) = 1,f(1) = 4,f(n+2)=2*f(n+1) + f(n)
//其中n 是大于0的整数 求f(n)的值
public int getF(int n) {
if(n == 0) {
return 1;
}else if(n == 1){
return 4;
}else {
return 2 * getF(n-1) + getF(n-2);
}
}
// 计算斐波那锲数列的第N个值(一个数等于前两个数的和)
public int Fibonacci(int n) {
if (n == 1) {
return 1;
}else if(n == 2) {
return 1;
}else {
return Fibonacci(n-1) + Fibonacci(n-2);
}
}
}
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/192669.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...