2

我得到了具有分支因子 b 的大小为 N 的树的数量,并尝试在不使用单独的递归函数来生成嵌套 for 循环的数量的情况下生成加泰罗尼亚数。

到目前为止我已经尝试过了

int catalan(int size, int b)
{

  int n = 0;
  int c = b;

  if (size < 2)
  {
    return 1;
  }

  if (b <= 0)
  {
    return n;
  }

  while(c--)
  {   
    for (int s = 0; s < size; s++)
    {
      n += (catalan(s,b) * catalan(size-1-s-c, b) );
    }
    catalan(size--,c);
  }

  return n;
}

对于 4 的大小和 2 的分支因子,我希望这个函数返回 14,但我收到的是 21。

提前致谢。

4

0 回答 0