递归求二项式系数值

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/skyejy/article/details/87932313

看到这道题,我又懵了,对递归很不熟练。而且我都想不明白为啥3,10 就得出120了。

看了一下别人的做法,意识到,其实题目把公式都给出来了,用代码实现公式就可以。我大概可以做出来,但有种知其然不知其所以然的感觉。

import java.util.Scanner;

public class recursion1 {

	static int Ckn(int k,int n)
	{
		int result = 0;
		if(k==0||k==n)
	    return 1;
		else if(0<k&&k<n)
	    result = Ckn(k,n-1)+Ckn(k-1,n-1);
		return result;
		
		
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
     Scanner sc=new Scanner(System.in);
     int k=sc.nextInt();
     int n=sc.nextInt();
     System.out.println(Ckn(k,n));
	}

}

猜你喜欢

转载自blog.csdn.net/skyejy/article/details/87932313