力扣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];
}
相关推荐
Dlrb12114 小时前
C语言-指针三
c语言·算法·指针·const·命令行参数
Tisfy4 小时前
LeetCode 2540.最小公共值:双指针(O(m+n))
算法·leetcode·题解·双指针
IronMurphy4 小时前
【算法四十七】152. 乘积最大子数组
算法
淘矿人6 小时前
Claude辅助DevOps实践
java·大数据·运维·人工智能·算法·bug·devops
Cosolar6 小时前
万字详解:RAG 向量索引算法与向量数据库架构及实战
数据库·人工智能·算法·数据库架构·milvus
落羽的落羽7 小时前
【算法札记】练习 | Week4
linux·服务器·数据结构·c++·人工智能·算法·动态规划
萑澈8 小时前
算法竞赛入门:C++ STL核心用法与时空复杂度速查手册
数据结构·c++·算法·stl
Godspeed Zhao8 小时前
从零开始学AI16——SVM
算法·机器学习·支持向量机
江屿风9 小时前
C++OJ题经验总结(竞赛)1
开发语言·c++·笔记·算法