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

珠海建设银行官方网站莱芜论坛哪个比较好

珠海建设银行官方网站,莱芜论坛哪个比较好,wordpress 邮件配置,h5页面制作流程96. 不同的二叉搜索树 - 力扣(LeetCode) 一、题目 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入:n 3 输出&a…

96. 不同的二叉搜索树 - 力扣(LeetCode)

一、题目

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

示例 1:

输入:n = 3
输出:5

示例 2:

输入:n = 1
输出:1

提示:

  • 1 <= n <= 19

二、代码

class Solution {public int numTrees(int n) {return compute(n);}public int compute(int N) {// 过滤特殊值if (N < 0) {return 0;}if (N < 2) {return 1;}long a = 1;long b = 1;long c = 0;// 2nlong limit = N << 1;// 1、计算c(2N, N) = b / afor (long j = 1, i = N + 1; j <= N && i <= limit; j++, i++) {// 计算a:从1累乘到na *= j;// 计算b:从n+1一直累乘到2n  b *= i;// 求a和b的最大公因数,用来对a和b进行分数化简,避免在计算过程中溢出。// 如果这里不进行化简的话,当N比较大的时候就会出现数据溢出情况c = gcd(a, b);a /= c;b /= c; }// 2、计算公式3的计算结果// 公式3:k(n)= c(2n, n) / (n + 1)// c(n, m) = n(n-1)...(n-m+1) / m!// b:2n * (2n - 1) * ... * (2n - n + 1)   也就是从n+1一直累乘到2n// a:1 * 2 * ... * (n - 1) * n   也就是从1一直累乘到n// c(2N, N) = b / areturn (int) ((b / a) / (N + 1));}// 辗转相除法求最大公因数public long gcd(long a, long b) {long c = a % b;if (c != 0) {return gcd(b, c);} else {return b;}}
}

三、解题思路 

卡特兰数满足如下关系式:

k(0)= 1, k(1)= 1时,如果接下来的项满足:

k(n)= k(0)*k(n-1) + k(1)*k(n- 2) + ... + k(n- 2)*k(1) + k(n- 1)* k(0)

或者

k(n)= C(2n, n) - C(2n, n-1)

或者

k(n)= C(2n, n) / (n + 1)

就说这个表达式,满足卡特兰数。

总的来说,需要剖析出这道题的本质:

假设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)。

明白了这道题的本质,发现了这个计算式子,就马上意识到这是一个卡特兰数的题目,直接用卡特兰数的计算公式计算结果即可。

http://www.yayakq.cn/news/288024/

相关文章:

  • 广州网站建站公司网站变宽屏怎么做
  • 网页设计师培训在哪里山西seo网络营销公司
  • 衡水网站建设的地方高端大气装饰公司网站源码 百度网盘
  • 新闻门户网站源码制作企业网站的问题
  • 有源码如何做网站电子商务网站建设有管理课后答案
  • 红色系 网站wordpress widget logic
  • 免费php网站模板网站建设市场介绍
  • 网站怎么做移动图片大全镇江网站建设介绍
  • 网站源码下载有什么用常平东站是东莞东站吗
  • wordpress网站换字体广州软件开发有限公司
  • 网站建设技术服务公司wordpress图片搬家
  • 做什么网站外贸网站推广运营
  • 那个公司搭建网站动漫设计学院
  • 网站地图生成器哪个好百度网站建设目标
  • 长春三合一网站建设成都专业网站建设套餐
  • 婚纱设计网站首页室内设计怎么网上接单
  • 淘客网站怎么建设秦皇岛保障性住房官网
  • 建设网站怎么賺钱市住建设局网站
  • 做期货看哪些网站跨境电商是不是坑
  • 什么是网站销售网页设计网站开发需要哪些知识
  • 城乡与建设部网站首页艺术品网站模板
  • pc 移动的网站开发wordpress关键词内链图片
  • 免费商用自媒体图片网站具有价值的网站建设
  • 动漫网站设计与实现深圳seo优化排名公司
  • 网站内容框架什么二手车网站做最好
  • 网站空间和服务器的区别网站添加备案信息
  • 南昌大型网站制作做网站 视频
  • 网站开发是什么费用各地好的深圳影视广告
  • 网站建立健全举报工作机制学校网站 建设措施
  • 为什么网站突然打不开做汽车脚垫版的网站