卡特兰数三个通项公式的推导

请添加图片描述

前提条件:

有两种操作,一种操作的次数不能超过另外一个,或者是不能有交集这些操作的合法方案数,通常是卡特兰数

情景:

1)n个0和n个1构成的字串,所有的前缀子串1的个数不超过0的个数,求这样的字串个数

向上的操作不超过向右的操作

2)包含n组括号的合法式子:

与情景1的练习:左括号对于0,右括号对应1

3) 一个栈的进栈序列为1,2,3,…,m,有多少个不同的出栈序列 ?

4)n个节点可以构造多少个不同的二叉树。

5)在圆上选择2n个点,将这些点成对连接起来所得到的n条弦不相交的方法数

6)通过连结顶点而将n+2边的凸多边形分成n个三角形的方案数

形式:

1 1 2 5 14 42 132 429 1430……

推导:

一式:

曲线救国。
1.求总路径数
2.求非法
3.相减得到合法
step1总路径就是2n次操作里选n次向右的方案数
C 2 n n C_{2n}^{n} C2nn

step2对于y = x + 1,
所有的非法路径都必然与其有一个交点。
从第一个交点开始路径对于y = x + 1对称
路径会对称到终点为(n-1,n+1)的点。
所以非法路径数就是 C 2 n n − 1 C_{2n}^{n-1} C2nn1
step3二者相减:
到达点 ( n , n ) 的合法路径数就是 H n = C 2 n n − C 2 n n − 1 到达点(n,n)的合法路径数就是H_n=C_{2n}^{n} - C_{2n}^{n-1} 到达点(n,n)的合法路径数就是Hn=C2nnC2nn1

二式:

1.明确需要配凑的式子: 1 n + 1 2 n ! n ! n ! ,即 C 2 n n \frac{1}{n+1}\frac{2n!}{n!n!},即C_{2n}^{n} n+11n!n!2n!,即C2nn
2.一式写成阶乘形式
3.提公因式 提这个公因式 2 n ! n ! ( n − 1 ) ! ,得到 2 n ! n ! ( n − 1 ) ! ∗ ( 1 n − 1 n + 1 ) 提这个公因式\frac{2n!}{n!(n-1)!},得到\frac{2n!}{n!(n-1)!}*(\frac{1}{n}-\frac{1}{n+1}) 提这个公因式n!(n1)!2n!,得到n!(n1)!2n!(n1n+11)
4.通分括号内的式子,再把提取出的公因式与之相乘。配凑出 1 n + 1 2 n ! n ! n ! ,即 1 n + 1 C 2 n n , o v e r \frac{1}{n+1}\frac{2n!}{n!n!},即\frac{1}{n+1}C_{2n}^{n},over n+11n!n!2n!,即n+11C2nn,over

三式

1.明确需要配凑的式子: C a t a l a n n − 1 Catalan_{n-1} Catalann1
2.拆解 C a t a l a n n Catalan_n Catalann
3.配凑出需要的式子,
4.剩下的式子约分。
step1明确 C a t a l a n n − 1 = 1 n C 2 n − 2 n − 1 = 1 n ( 2 n − 2 ) ! ( n − 1 ) ! ( n − 1 ) ! Catalan_{n-1} = \frac{1}{n}C_{2n-2}^{n-1}=\frac{1}{n}\frac{(2n-2)!}{(n-1)!(n-1)!} Catalann1=n1C2n2n1=n1(n1)!(n1)!(2n2)!
step2拆解 C a t a l a n n = 1 n + 1 C 2 n n = 1 n + 1 2 n ! n ! n ! Catalan_n = \frac{1}{n+1}C_{2n}^{n}=\frac{1}{n+1}\frac{2n!}{n!n!} Catalann=n+11C2nn=n+11n!n!2n!
step3配凑 得到 1 n + 1 ( 2 n − 1 ) ( 2 n ) n ∗ 1 n ( 2 n − 2 ) ! ( n − 1 ) ! ( n − 1 ) ! 得到\frac{1}{n+1}\frac{(2n-1)(2n)}{n}*\frac{1}{n}\frac{(2n-2)!}{(n-1)!(n-1)!} 得到n+11n(2n1)(2n)n1(n1)!(n1)!(2n2)!

step4化简 4 n − 2 n + 1 ∗ 1 n C 2 n − 2 n − 1 = C a t a l a n n − 1 \frac{4n-2}{n+1}*\frac{1}{n}C_{2n-2}^{n-1}=Catalan_{n-1} n+14n2n1C2n2n1=Catalann1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/19638.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

redis(11)

一)基于Set集合实现点赞功能: 在我们的博客表当中,每一篇博客信息都有一个like字段,表示点赞的数量 需求: 1)同一个用户只能点赞一次,再次进行点赞则会被取消; 2)如果当前用户已经点赞过了,那么点赞按钮高亮显示&…

STL-deque容器

双端数组,可以对头端进行插入删除操作 deque 容器和 vecotr 容器有很多相似之处,比如: deque 容器也擅长在序列尾部添加或删除元素(时间复杂度为O(1)),而不擅长在序列中间添加或删除元素。deque 容器也可…

win部署CAS服务并使用

前提描述:通过本次了解cas是个什么东西,并使用它。 cas为oss(单点登录)的一种实现方案。要实现cas单点登录,首先需要部署cas的server服务。 CAS是Central Authentication Service的缩写,中央认证服务,。 一、安装CAS…

VMware NSX-T Data Center 3.2.3 - 数据中心网络全栈虚拟化

VMware NSX-T Data Center 3.2.3 - 数据中心网络全栈虚拟化 重要更新:修复 136 个 bug。 请访问原文链接:https://sysin.org/blog/vmware-nsx-t-3/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org VMwa…

OpenGL高级-实例化

知识点 假如你有一个有许多模型的场景,而这些模型的顶点数据都一样,只是进行了不同的世界空间的变换。想象一下,有一个场景中充满了草叶:每根草都是几个三角形组成的。你可能需要绘制很多的草叶,最终一次渲染循环中就肯…

【开源之夏 2023】欢迎报名 Dragonfly、Kata Containers、Nydus 社区项目!

开源之夏是由“开源软件供应链点亮计划”发起并长期支持的一项暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展,培养和发掘更多优秀的开发者。 活动联合国内外各大开源社区,针对重要开…

[一篇读懂]C语言十二讲:栈与队列和真题实战

[一篇读懂]C语言十二讲:栈与队列和真题实战 1. 与408关联解析及本节内容介绍1 与408关联解析2 本节内容介绍 2. 栈(stack)的原理解析2.1 **栈:只允许在一端进行插入或删除操作的线性表**2.2 栈的基本操作2.3 栈的顺序存储2.4 栈的链表存储 3. 初始化栈 -…

MySQL学习笔记

一、mysql环境安装 服务管理工具(省略) 二、Mysql DB2 Sybase Oracle SQL Server Mysql Access MangoDB(noSQL) Apache/nginx服务器: LAMP LinuxApacheMysqlPHP LNMP LinuxNginxMysqlPHP WAMP windowApacheMysqlPHP SQL: DDL(数据定…

【进程间通信 之 通信的建立】

目录: 前言进程间通信的目的进程间通信的方式管道1.匿名管道简单示例1 - 消息传输五个特性四种场景简单示例2 - 进程控制对管道的深入理解 2.命名管道简单示例3 -- 不相关进程间通信 system V共享内存简单示例4 - 通知事件消息传输 总结 前言 打怪升级:…

MyBatis学习 (一) 配置文件解析流程

MyBatis源码学习 最近在学习MyBatis的代码。记录下 首先下载下源码: https://github.com/mybatis/parent https://github.com/mybatis/mybatis-3 parent为父控依赖。也需要下载。 入口 InputStream inputStream null; try {// 获取配置文件inputStream Reso…

为AIGC敲响警钟!千亿级赛道为何成了作恶温床?

‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 随着人工智能通用大模型的问世,全球对AIGC技术的强大潜力有了更加深刻的认识。然而,这也引发了诸多关于AIGC技术可信度、隐私保护以及知识产权等问题的争议,引起了广泛关注。 5月9日&…

开源单用户客服系统源码-上传附件功能-elementui 异步上传文件【唯一客服开发商】...

之前开源的单用户客服系统,上传附件成功后,还不能展示出文件形式,今天把上传展示出文件形式给开发完善一下。 我想要实现的效果是,展示出文件的名称和大小信息 后端返回一个带有文件信息的json结果,前端把该信息组织一…

ubuntu系统配置大恒相机驱动并读取ros话题

文章目录 0. 说明1. 安装大恒相机sdk1.1 下载1.2 安装sdk(用于配置ip和调试相机参数)(1) 电脑网卡配置(网卡固定ip)(2)查看相机图像以及配置相机参数 2. 安装ros驱动包(注:大恒相机官方没ros驱动)2.0 正确流程2.1 错误示范2.1 报错1--缺包2.2 报错2--包编译顺序问题…

arduino 导入 Brain 库

一、引言 最近在做一个可以用脑电波控制的arduino小车,需要用到Brain这个库,而且需要自己导入才能使用。之前试了很多方法,导入成功了,过了几个月又忘记怎么导入了,今天想起来记录一下,好记性不如烂笔头。 …

Java集合类

目录 一、整体架构图 二、List集合类(有序的,可重复的) 1.顺序列表ArrayList 2.链式列表LinkedList 三、Set集合类(不可重复) 1.HashSet(哈希集合) 2.LinkedHashSet(链式哈希集合) 3.TreeSet(树形集合) 四、Map集合类(无序,键唯一,值…

MySQL实战之主从数据同步机制

主从同步的重要性: 解决数据可靠性的问题需要用到主从同步;解决 MySQL 服务高可用要用到主从同步;应对高并发的时候,还是要用到主从同步。 一、MySQL 主从同步流程 当客户端提交一个事务到 MySQL 的集群,直到客户端收…

跨域时怎么处理 cookie?

前言 一个请求从发出到返回,需要浏览器和服务端的协调配合。浏览器要把自己的请求参数带给服务端,服务端校验参数之后,除了返回数据,也可能会顺便把请求是否缓存,cookie等信息告诉浏览器。当请求是跨域请求的时候&…

项目调研 | Loopring研究报告

一、项目简介及愿景 Loopring协议是一个专为应用程序开发的 zkRollup 协议、一个中继器、一个 L2 非托管交易所、一个智能钱包。用户可以在其中使用、交易和存储资产,同时让资产获得增长。 上述Loopring这些Title具体详情如下: 作为协议,Loop…

[Golang] 设计模式以及单例设计模式实例实现

😚一个不甘平凡的普通人,致力于为Golang社区和算法学习做出贡献,期待您的关注和认可,陪您一起学习打卡!!!😘😘😘 🤗专栏:算法学习 &am…

金3银四结束了,回顾一下我2个月面试的公司....

金三银四结束了,还没有 offer 的同学不要气馁,该来的迟早会来。楼主从 年底 月有想法跳槽开始准备春招,一开始也是惨不忍睹,后来慢慢进入状态最近的面试基本都能走到终面,所以好好坚持,最后一定会有好结果的…