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
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP