debedebe回答ポイント 50ptウォッチ

二分木について、要素数nの場合、全部で何パターン考えられるのでしょうか。一般式を教えてください。

条件
・根も要素として数える
・右の子と左の子を区別して考える
n=1のとき1パターン、n=2のとき2パターン、
n=3で5パターン、n=4で14、n=5で42、n=6で132になる。。。はずです。
もう一つ。
この問題を再帰的に解決する(要素数nを受け取り、パターン数を返す)関数treeをC++の構文にのっとって書いた場合、以下のプログラムであってますでしょうか。(nは1以上の整数)
int tree(int n){
int p=0;
if((n==0)||(n==1)) return 1;
for(int i=0;i<n;i++)
p += tree(i)*tree((n-1)-i);
return p;
}

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

みんなの回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2005-11-16 21:41:18
終了日時
--
回答条件
回答にURL必須 1人2回まで

この質問のカテゴリ

この質問に含まれるキーワード

C++540素数82再帰58関数2326整数203プログラム5048

人気の質問

メニュー

PC版