public class Solution {
public int numTrees(int n) {
if (n <= 0)
return 0;
if (n == 1)
return 1;
if (n == 2)
return 2;
int[] rs = new int[n + 1];
rs[0] = 1;
rs[1] = 1;
rs[2] = 2;
for (int i = 3; i < n + 1; i++) {
int tmp = 0;
for (int j = 1; j <= i; j++ ) {
tmp += rs[j - 1]*rs[i - j];
}
rs[i] = tmp;
}
return rs[n];
}
}
差一点就推出来了,差一点没想到。
+1计算1-n有多个不同的二叉树
最新推荐文章于 2024-07-12 14:04:12 发布