题目要求:
思路:
利用动态规划求解
创建C数组大小为n+1。
C[i]的定义为有i个节点的二叉搜索树的种数。
首先分析 C[1]=1;
C[2]=2;
C[3]总共有如图所示情况;
C[3] = C[0] * C[2] + C[1] * C[1] + C[2] * C[0];
即C[i] =C[0...i-1]*C[i-1...0]的和。
代码如下:
题目要求:
思路:
利用动态规划求解
创建C数组大小为n+1。
C[i]的定义为有i个节点的二叉搜索树的种数。
首先分析 C[1]=1;
C[2]=2;
C[3]总共有如图所示情况;
C[3] = C[0] * C[2] + C[1] * C[1] + C[2] * C[0];
即C[i] =C[0...i-1]*C[i-1...0]的和。
代码如下: