力扣96:不同的二叉搜索树

给你一个整数 n ,求恰由 n 个节点组成且节点值从 1n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。

示例 1:

复制代码
输入:n = 3
输出:5

示例 2:

复制代码
输入:n = 1
输出:1

卡特兰数:f[n]=f[n-1]*f[0]+f[n-2]*f[1]....f[0]*f[n-1]

代码:

复制代码
int numTrees(int n){
    int f[20];
    f[0]=f[1]=1;
    for(int i=2;i<=n;i++)
    {
        f[i]=0;
        for(int j=0;j<i;j++)
        {
            f[i]+=f[j]*f[i-1-j];
        }
    }
    return f[n];
}
相关推荐
JianminZheng2 小时前
MTPA算法原理及仿真验证
算法
im_AMBER2 小时前
Leetcode 38
笔记·学习·算法·leetcode
Miraitowa_cheems3 小时前
LeetCode算法日记 - Day 82: 环形子数组的最大和
java·数据结构·算法·leetcode·决策树·线性回归·深度优先
Code_Shark3 小时前
AtCoder Beginner Contest 426 题解
数据结构·c++·算法·数学建模·青少年编程
仰泳的熊猫3 小时前
LeetCode:698. 划分为k个相等的子集
数据结构·c++·算法·leetcode
豐儀麟阁贵3 小时前
4.5数组排序算法
java·开发语言·数据结构·算法·排序算法
Shinom1ya_4 小时前
算法 day 32
算法
WBluuue5 小时前
数据结构与算法:摩尔投票算法
c++·算法·leetcode
小羊学伽瓦5 小时前
【Java数据结构】——常见力扣题综合
java·数据结构·leetcode·1024程序员节
文火冰糖的硅基工坊6 小时前
[人工智能-大模型-66]:模型层技术 - 两种编程范式:数学函数式编程与逻辑推理式编程,构建起截然不同的智能系统。
人工智能·神经网络·算法·1024程序员节