Catalan数列

引入

    今天听学长讲了卡特兰数列后对其有了更深的认识,在此完善了一下之前的博客加以总结。

    首先用一个经典的例子来描述一下Catalan数列,我们有一个1~n的数列和一个大小为n的栈,我们有如下两种操作:

      1. 当未入栈序列不为空时,使序列的第一个元素入栈。
      2. 当栈不为空时,使栈顶元素出栈。

    我们可以显然地发现,如果我们选择操作的顺序不同,我们最后所形成的出栈序列也不相同,那么有多少种出栈序列呢?

  

    而这个数列中的C(n),就是我们所定义的Catalan数列。

    如果我们把所有每一次的操作都写出来,可以得到一个关于1和2的操作序列,这个序列有以下性质:

    1. 共有2n项且n项为1,n项为2。
    2. 从左往右1的个数永远不少于2的个数。

 

定义

 

通项公式

  

通项公式推导

  方法1:数学方法,摘自某大老的PPT,表示不是很了解,在此向各位大佬请教。


 

 


 

 


 

 (注意他证明过程中的初值是

 

 


  方法2:组合数证明法

 

  我们设定一个情景:假设一个点从A(0,0)出发走到B(n,n),我们定义两种走的方法:

    1. 往右走。
    2. 往上走。

  我们从A走到B,一共要走2n步,其中n步为1,n步为2,这样我们从A走到B的方案也就可以转化为一个1和2的序列了,而所有的1和2的序列构成的排列,即为从A走到B的方案数:

  相较之于引言中所提到的序列,要使通过这种情景生成的序列是满足Catalan的数列的方案序列,我们需要的充要条件是从左往右1的个数永远比2的个数少(即向上走过的次数不少于向右走过的次数),即所走的路径只存在于紫线的上部,而这个条件等价于所形成的路径与绿线没有交点。我们已经知道了所有的方案数,我们只需要求出不满足条件的方案数就可以了。

  举出一个反例(红线)我们把这条线与绿线的第一个交点之后的部分都关于绿线对称得到蓝线部分,加上前面的部分与之形成的路径构成了一条从A(0,0)走向C(n+1,n-1)的路径,我们可以发现这样的蓝线有以下三条性质:

    1. 蓝线只向上走和向右走,且重点为C(n+1,n-1)。
    2. 对于每一条符合性质1的蓝色路径都有且只有一条不合法的红色路径与之对应。
    3. 对于每一条不合法的红色路径有且只有一条满足性质1的蓝色路径与之对应。

  由此,我们可以发现不合法的红色路径与满足上述性质的蓝色路径一一对应,所以不合法路径数就是蓝色路径数,为

  所以,所有合法的路径数为:,即Catalan的第n个数为

推论

    • n个左括号和n个右括号组成的合法括号序列的数量为Cat(n)。
    • 1,2,···,n经过一个栈,形成的合法出栈序列的数量为Cat(n)。
    • n个结点构成的不同二叉树的数量为Cat(n)。
    • 在平面直角坐标系上每一步只能向右或向上走,从(0,0)走到(n,n)并且除两个端点外不接触直线 y = x的路线数量为Cat(n)。
      • 推广:在平面直角坐标系上,每一步只能向右或上走一步,从(0,0)走到(n,m)(n ≥m)并且除两个点外不接触直线 y = x 的路线的数量为

转载于:https://www.cnblogs.com/2020pengxiyue/p/9291476.html

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机和外部通信方式,计算机和外部的通信方式

计算机和外部交换信息又称为通信(Communication)。按数据传送方式分为并行通信和串行通信两种基本方式。1、并行通信并行通信就是把传送数据的n位数用n条传输线同时传送。其优点是传送速度快、信息率高。并且,通常只要提供二条控制和状态线,就能完成CPU和…

stm32入门之keil5的安装以及第一个工程的建立

摘自:stm32入门之keil5的安装以及第一个工程的建立 作者:SKY丶丿平才 发布时间: 2020-12-06 17:08:30 网址:https://blog.csdn.net/weixin_48264057/article/details/110734596 文章目录 前言一、keil5的下载与安装1.下载相关链接…

微信电脑客户端_无聊的话,用微信玩玩电脑

被禁足的2020注定是让人印象深刻的一年如果现在你很无聊来试试用微信玩玩电脑看能否给这不出门就是做贡献的日子带来一点乐趣开启步骤1、在能使用(接触的)的电脑上安装上Hipc在电脑访问 hipc.cn下载PC客户端(仅2M左右大小)2、安装PC客户端3、微信扫一扫绑定现在看看如何用微信玩…

epic堡垒之夜显示服务器离线,堡垒之夜epic服务器进不去 | 手游网游页游攻略大全...

发布时间:2017-12-19堡垒之夜开国服了,那么有的小伙伴就发现自己的国服为什么进不去,下面牛游戏小编就为你们带来了堡垒之夜国服进不去的解决办法,想了解的小伙伴就一起来看看吧,希望能对你们有帮助. 解决办法如下: 1.重新下载并安装游戏,下载前关 ...标签&#xff…

动态加载 回显_ElementUI cascader级联动态加载及回显

先看图,你是否也遇到这个需求?如果你正在焦头烂额,无脑抓瞎,那么你来对地方了,因为我将给你一个简单易懂的实现方案。我也在网上翻了无数页答案,也照着别人的代码和思路尝试了,事实上并不能解决…

单片机的四种烧写方式

参考:单片机的四种烧写方式 作者:爱学习的小王呀 发布时间:2020-11-27 20:05:12 网址:https://blog.csdn.net/hongliwong/article/details/110245095?spm1001.2014.3001.5501 参考:单片机3种烧录方式解析 作者&#x…

关于驰骋表单引擎中字段扩展设置对文本框Pop窗体返回值的升级说明 2012/11/13...

为什么80%的码农都做不了架构师?>>> 关于驰骋表单引擎中字段扩展设置对文本框Pop窗体返回值的升级说明 2012/11/13 现有功能: 以前版本仅支持自己定义url,返回值到文本框上. 升级功能: 1, 增加了可以自己定义数据源模式,数据源可…

中兴f650 2.0.3 固件降级_手机资讯:如何升级iOS12.1.4正式版iOS12.1.4正式版升降级教程...

如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多知识的,这些知识很多小伙伴一般都是不知道的,就好比最近就有很多小伙伴们想要知道如何升级正式版正式版升降级教程,那么既然现在大家对于如何升级正式版正式…

C# 加密解密类

一. MD5 1 防止看到明文 数据库密码,加盐(原密码固定字符串,然后再MD5/双MD5) 2 防篡改 3 急速秒传(第一次上传文件,保存md5摘要,第二次上传检查md5摘要) 4文件下载(防篡改,官方发布的时候给一个md5摘要&#xf…

请求solr服务器未响应,solr与tomcat整合

一、准备工作:我使用的是tomcat7.0,solr-4.8.1solr-4.8.1解压后是这样的。二、开始配置了1、首先要创建两个文件夹。home和server。我是创建在与solr-4.8.1同一根目录上的。D:\work-tool\server\solr\home和D:\work-tool\server\solr\server2、从solr-4.8.1\dist复制…

WeMos下实现小车避障与手机控制

参考:WeMos下实现小车避障与手机控制 作者:爱学习的小王呀 发布时间:2020-10-02 10:17:45 网址:https://blog.csdn.net/hongliwong/article/details/108900048?spm1001.2014.3001.5501 目录前言一、项目软硬件平台及开发环境1.硬…

苹果手机耗电快_iPhone12用5G耗电快,苹果回应

原标题:iPhone12用5G耗电快,苹果回应北京头条客户端10月24日消息,针对有媒体测试苹果iPhone12开启5G模式下,用电量提升的问题,苹果iPhone营销副总裁Kaiann Drance回应称,iPhone12 增加的智能数据模式可以平…

Ubuntu12 10下安装JDK7

为什么80%的码农都做不了架构师?>>> Ubuntu12 10版本下,不再预装JDK,包括OpenJdk,所以我们要从Oracle官网上下载java7的压缩包,选择适合自己电脑的安装包,我选的是jdk-7u9-linux-i586.tar.gz。…

neo4j python 算法_python操作neo4j简单实例

一:neo4j是什么neo4j:Neo4j是一个高性能的,NOSQL图形数据库,有关于更多neo4j的资料出门右拐二:python操作neo4j的实现python中neo4j的操作可以利用驱动包或者py2neo包,我采用py2neo第三方包实现以下简单功能,先建立一个neo4j的链接对于neo4j的…

尚硅谷的 ediary 笔记_干货分享 | 硅谷创新加速营第五讲教您合理规划融资需求 降低投资风险...

5月26日上午,康佳之星携手青岛蓝谷管理局、斯坦福青岛研究院、海尔海创汇联合举办的第二届硅谷创新加速营第五讲顺利完成。斯坦福青岛研究院董事长的Claude Leglise先生做客直播间,为现场创业者、企业家讲授创业之路必修课:企业财务规划。本讲…

虚拟机的服务器黑屏,VMware Workstation 14运行虚拟机黑屏解决办法

VMware Workstation 14运行虚拟机黑屏解决办法升级到VMware workstation 14 pro后所有虚拟系统全部黑屏,VMware 14 黑屏,VMware Workstation 14运行虚拟机黑屏是什么原因步骤如下,步骤如下,1、以管理员身份运行命令提示符(cmd.exe…

c++ 冒泡排序_干货|python笔记1-冒泡排序

面试的时候经常有面试官喜欢问如何进行冒泡排序?这个问题相信可以难倒一批的同学,本篇就详细讲解如何用python进行冒泡排序。基本原理01概念:冒泡排序是一种交换排序,它的基本思想是:两两比较相邻记录的关键字&#xf…

双链表嵌套的简单学生信息管理系统

参考:实现双链表嵌套的简单学生信息管理 作者:三速何时sub20 发布时间: 2020-07-20 10:44:40 网址:https://blog.csdn.net/weixin_44234294/article/details/107458155?spm1001.2014.3001.5501 参考:双链表嵌套实现简…

scrapy如何指定生成python3的项目_如何把阿里图标库的图标生成代码并应用于自己的项目...

有时候需要用很多图标去完成一定的页面效果和工作展现,框架内置的图标可能满足不了我们的需求,有个很好的图标库想必大家都知道-----就是阿里图标库。那么我们如何才能够把阿狸图标库的图标引用到自己的项目中呢?耐着性子往下看吧&#xff01…

win10系统无线服务器出错,win10系统中Wi-Fi证书错误的解决方法

wifi想必大家都很熟悉吧,这是很多用户们喜欢的无线网络,但是有时候会碰到一些wifi错误,比如有不少win10系统用户遇到wifi证书错误的情况,这样就会导致用户无法连接到网络或访问某个网站,该怎么处理呢,现在就…