leetcode-96. 不同的二叉搜索树

2022-06-17 10:00:11 浏览数 (1)

JAVA解法

代码语言:javascript复制
class Solution {
    public int numTrees(int n) {
        // 提示:我们在这里需要用 long 类型防止计算过程中的溢出
        long C = 1;
        // 卡塔兰数的计算公式
        for (int i = 0; i < n;   i) {
            C = C * 2 * (2 * i   1) / (i   2);
        }
        return (int) C;
    }
}

题解分析

这道题可以用 卡塔兰数 这种组合数学来解,是已给出推导的可行的解这类题的现成公式;也可以自己用递归实现。

leetcode原题:96. 不同的二叉搜索树

0 人点赞