題組內容
一、撰寫一個 Java 程式,使用遞迴計算給定正整數 n 的「卡塔蘭數」 (Catalan Number)C(n),其中 C(n)定義為:C(0) = 1,C(n) = Σ(C(i) * C(n-1-i)) for i from 0 to n-1,使用者輸入 n(n 為非負整數且不超過 15) 。輸出 C(n), 並使用 long 型別。執行範例如下:例如 n 輸入 4,輸出 C(4) = 14。
回答下列問題:
(一)完成( A )程式碼(12 分)
詳解 (共 2 筆)
詳解
long sum=0;
if ( n==0){ return 1 ;}
if(n>0){
for(int i=0;i<n;i++){
sum=sum+catalan(i)*catalan(n-1-i);}
}
if ( n==0){ return 1 ;}
if(n>0){
for(int i=0;i<n;i++){
sum=sum+catalan(i)*catalan(n-1-i);}
}
詳解
long sum = 0;
if (n == 0) {
sum = 1;
} else {
for (int i=0;i<=n-1;i++) {
sum += catalan(i) * catalan(n-1-i);
}
}