Java 中的卡特兰数


根据二项式系数,第 n 个卡特兰数经由公式计算:

其中 k 从 2 到 n 变化,且 n ≥ 0。即

Cn = (2n)!/((n+1)!n!)

程序

public class CatalanNumbers {
   public static long fact(int i) {
      if(i <= 1) {
         return 1;
      }
      return i * fact(i - 1);
   }
   public static void main(String args[]) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter a number :");
      int num = sc.nextInt();
     
      //(2n)!/(n+1)!*n!
      for(int i = 0; i<=num; i++) {
         long Cn = (fact(2*i))/(fact(i+1)*fact(i));
         System.out.println("C"+i+": "+Cn);
      }
   }
}

输出

Enter a number :
7
C0: 1
C1: 1
C2: 2
C3: 5
C4: 14
C5: 42
C6: 132
C7: 429

更新于: 25-Jun-2020

511 次浏览

开始你的 职业生涯

完成课程,获得认证

开始
广告