Leetcode96.Unique Binary Search Trees不同的二叉搜索树
2024-09-06 12:47:16
给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种?
示例:
输入: 3 输出: 5 解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树:
假设n个节点存在二叉排序树的个数是G(n),1为根节点,2为根节点,...,n为根节点,当1为根节点时,其左子树节点个数为0,右子树节点个数为n-1,同理当2为根节点时,其左子树节点个数为1,右子树节点为n-2,所以可得G(n) = G(0)*G(n-1)+G(1)*(n-2)+...+G(n-1)*G(0)
class Solution {
public:
int numTrees(int n) {
if(n == 0)
return 1;
vector<int> dp(n + 1, 0);
dp[1] = 1;
dp[0] = 1;
for(int i = 2; i <= n; i++)
{
int cnt = 0;
for(int j = 0; j <= i - 1; j++)
cnt = cnt + dp[j] * dp[i - 1 - j];
dp[i] = cnt;
}
return dp[n];
}
};
最新文章
- HTML和XHTML的区别
- SharePoint 2013 自定义扩展菜单
- python: jquery实现全选 反选 取消
- SQLServer2008 和SQLServer2008 R2版本导出 数据库结构和数据sql
- 保持UIImagePickerController后导航栏风格统一
- Flask框架学习笔记(API接口管理平台 V1.0)
- maven本地仓库.m2文件夹路径讲解
- Winform上传下载文件代码
- Visual Studio 2010 旗舰版安装图解
- linux ssh scp无密码登录
- css兼容问题与实践归纳总结
- struts2和struts1认识
- OVS vxlan 底层结构分析 - 每天5分钟玩转 OpenStack(148)
- FPGA设计思想(持续更新)
- Pashmak and Flowers
- vue-cli 项目踩坑 npm install 时出错
- 分享几个有意思的css js工具网站
- Mudo C++网络库第八章学习笔记
- Linux上 发布.Net Core
- Centos7更改网卡名称Eth0并配置静态IP
热门文章
- 主机入侵防御系统(HIPS)分析
- VS2010-MFC(对话框:设置对话框控件的Tab顺序)
- 通过数据库中的表,使用 MyEclipse2017的反向生成工具-->;hibernate反转引擎引擎(MyEclipse2017自带的插件) 来反转生成实体类和对应的映射文件
- ASP.NET MVC生命周期与管道模型
- @Value取值为NULL的解决方案
- jmeter参数化之用户参数
- linux与window文件传输(使用ssh+putty)
- HZOI20190822模拟29题解
- Django项目:CMDB(服务器硬件资产自动采集系统)--01--01CMDB获取服务器基本信息
- 苹果系统 IOS 12 的H5 BUG :键盘把页面顶上去了,底下留有一块空白区域