9
バイナリツリーを列挙する
二分木 二分木は、3つのタイプのノードを持つツリーです。 子を持たないターミナルノード それぞれが1つの子を持つ単項ノード それぞれ2つの子を持つバイナリノード BNF(Backus–Naur形式)で与えられる次の文法でそれらを表現できます。 <e> ::= <terminal> | <unary> | <binary> <terminal> ::= "0" <unary> ::= "(1" <e> ")" <binary> ::= "(2" <e> " " <e> ")" この文法では、ノードは事前順序で指定され、各ノードは、子の数である数字で表されます。 モッツキン数 Motzkin番号(OEIS)(Wikipedia)には多くの解釈がありますが、1つの解釈は、nth Motzkin番号はnノードを持つ別個の二分木の数であるということです。Motzkin番号の表が始まります N Motzkin number M(N) 1 1 2 1 3 2 4 4 5 9 6 21 7 …