力扣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];
}
相关推荐
C++ 老炮儿的技术栈7 小时前
C/C++ 中 inline(内联函数)和宏定义(#define)的区别
开发语言·c++·git·算法·机器人·visual studio
大柏怎么被偷了8 小时前
【C++】哈希的应用
算法·哈希算法
血小板要健康8 小时前
如何计算时间复杂度(上)
java·数据结构·算法
古城小栈8 小时前
Rust Vec与HashMap全功能解析:定义、使用与进阶技巧
算法·rust
wWYy.8 小时前
详解哈希表
数据结构·算法·散列表
无望__wsk8 小时前
Python第一次作业
开发语言·python·算法
Lips6118 小时前
2026.1.25力扣刷题笔记
笔记·算法·leetcode
源代码•宸9 小时前
Leetcode—746. 使用最小花费爬楼梯【简单】
后端·算法·leetcode·职场和发展·golang·记忆化搜索·动规
南 阳9 小时前
Python从入门到精通day16
开发语言·python·算法
沉默-_-9 小时前
力扣hot100-子串(C++)
c++·学习·算法·leetcode·子串