用递归实现求n!阶层和菲波那切数列

递归算法

1.求n!阶层和

我们都知道n!是指n+(n-1)+(n-2)+…+1,用java来实现这个递归

public class Factorial {
	public static int factorial(int n) {
		if(n==1) { //n为1,返回结果为1
			return 1;
		}else {  //n大于等于1,调用递归算法
			return factorial(n-1)+n;
		}
	}
	//主方法,调用上述定义的方法进行计算;
	public static void main(String[] args) {
		Factorial f=new Factorial();
		int result=f.factorial(5);
		System.out.println("阶层和是:"+result);
		
	}
}

2.斐波那契数列

1,1,2,3,5,8,13,…

public class Fibonacci {
    //定义求解方法;
	public static int fibonacci(int n) { 
		if(n==0 || n==1) {
			return 1;
		}else {
			return fibonacci(n-1)+fibonacci(n-2);
		}
	}
	//主方法,调用上面的Fibonacci方法进行计算;
	public static void main(String[] args) {
		Fibonacci f=new Fibonacci();
		int result=f.fibonacci(5);
		System.out.println(result);
	}
}

在这里插入图片描述

发布了12 篇原创文章 · 获赞 8 · 访问量 319

猜你喜欢

转载自blog.csdn.net/qq_45309297/article/details/102981505