
解题步骤:



参考代码:
- class Solution {
- public:
- int numTrees(int n) {
- vector<int> dp(n+1);
- //初始化
- dp[0]=1;
- //填表
- for(int i=1;i<=n;i++)
- {
- for(int j=1;j<=i;j++)
- {
- //状态转移方程
- dp[i]+=(dp[j-1]*dp[i-j]);
- }
- }
- //返回值
- return dp[n];
- }
- };
你学会了吗???