当前位置: 首页 > news >正文

力扣96 不同的二叉搜索树 java实现

96.不同的二叉搜索树

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

示例 1:

输入:n = 3输出:5

示例 2:

输入:n = 1输出:1

提示:

  • 1 <= n <= 19

如图所示:

当n为3的时候有以下情况:

当1为头结点的时候,其右子树有两个节点

当2为头结点的时候,其左右子树都只有一个节点

当3为头结点的时候,其左子树有两个节点

元素1为头结点搜索树的数量 = 右子树有2个元素的搜索树数量 * 左子树有0个元素的搜索树数量

元素2为头结点搜索树的数量 = 右子树有1个元素的搜索树数量 * 左子树有1个元素的搜索树数量

元素3为头结点搜索树的数量 = 右子树有0个元素的搜索树数量 * 左子树有2个元素的搜索树数量

由此可推出递归的规律。

public static void main(String[] args) { // 测试用 System.out.println(numTrees(3)); } public static int numTrees(int n) { int[] res = new int[n + 1]; res[0] = 1; res[1] = 1; for (int i = 2; i <= n; i++) { int sum = 0; for (int j = 1; j <= i; j++) { sum = sum + res[j - 1] * res[i - j]; } res[i] = sum; } System.out.println(Arrays.toString(res)); // 观测每个数量的不同二叉搜索树 return res[n]; }

以上为记录分享用,代码较差请见谅

http://www.jsqmd.com/news/212340/

相关文章:

  • 【评委确认】蔡超 泰佩思琦数字化与技术副总裁丨第八届年度金猿榜单/奖项评审团专家
  • 二分法排查:通过禁用模块或数据分段定位
  • 144本!计算机人工智能领域SCI汇总
  • 掌握AI应用架构师领域上下文工程,提升AI智能体性能的有效方法
  • 美亚 4.7 星评,专家力荐,用 28 道题搞定算法核心能力!
  • 讯飞输入法 v15.0.5 纯净去限制版下载 解锁高级版 1 分钟 400 字语音输入带你飞
  • SHAREit 茄子快传下载 无网极速传输神器 安卓跨平台文件互传工具
  • 【光子AI】MCP 的 streamable_http 与 SSE 前后区别是什么:原理剖析和源代码详解
  • docker部署kkFileView实现文件预览功能
  • Linux信号处理函数中断流程分析
  • 吐血推荐!继续教育AI论文写作软件TOP9:选对工具轻松过关
  • 24v转100v 功率350w 12v转200v300v400v500v直流dcdc高压电源模块
  • [特殊字符]️_开发效率与运行性能的平衡艺术[20260107163415]
  • RAG优化完全指南:从检索到生成的实战技巧,程序员必学!建议收藏
  • ModBus协议——可用A810C-L400M30无线LORA数传电台
  • 德州仪器在CES首次展示新型汽车半导体及开发资源,提升车型的安全性和自动驾驶能力
  • 2025年终总结 - 微分几何助力突破具身智能发展的瓶颈
  • RAG技术2025年演进:从检索增强生成到上下文引擎,程序员必学大模型关键技术
  • 星巴克中国与亚朵集团达成合作推出联合会员计划 | 美通社头条
  • Python斐波那契数列代码示例
  • 五大 AI 获客软件推荐:适配不同场景的精准获客解决方案
  • 线性判别分析(LDA)
  • 我们可以使用 onChange 事件来监听 input 的变化,并修改 state
  • 吐血推荐专科生必用TOP10 AI论文软件
  • 本章节我们将讨论如何React 表单与事件
  • Nordic方案——无线射频模组AS01-ML01SC
  • GEO服务/运营商推荐!2026 GEO 优化实用指南:如何选对服务商让 AI 精准推广品牌
  • Mac隐藏效率神器
  • Python实现斐波那契数列计算
  • 优质正版素材平台实战指南:四大资源库深度解析