热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

知识点整理组合数学

定义(#86debe)组合:C(n,m)表示从n个元素中,取任意的m个元素的方案数。定义式:递推式

定义(#86debe)

  组合:C(n,m)表示从n个元素中,取任意的m个元素的方案数。

  定义式:       递推式:C(n,m)=C(n-1,m-1)+C(n-1,m)

  排列:A(n,m)表示从n个元素中,取任意的m个元素并排列好的方案数

常用公式

1. C(n,m)=C(n,n-m)

2. ∑C(n,i)=2^n

  证明&#xff1a;从n个元素中任意取i个(0<&#61;i<&#61;n)的所有不同方案。

     首先&#xff0c;∑C(n,i)表示从n个元素中任意取0个的所有不同取法&#43;从n个元素中任意取1个的所有不同取法&#43;从n个元素中任意取2个的所有不同取法&#43;……&#43;从n个元素中任意取n个的所有不同取法的总和。

     其次考虑对于n个元素中的任意一个&#xff0c;记作A&#xff0c;则在每次取时&#xff0c;A都有取或不取两种选择&#xff0c;并对于A的选择是独立的&#xff0c;与其他元素无关。所以∑C(n,i)&#61;2^n。

3. ∑i*C(n,i)&#61;n*2^(n-1)

  意义&#xff1a;i*C(n,i) 表示先从n个元素里取出i个元素&#xff0c;再从这i个元素中取出一个元素。

  证明&#xff1a;参考公式2

4. ∑(i<&#61;n)C(i,m)&#61;C(n&#43;1,m&#43;1)

  放到杨辉三角上就是紫色部分的和等于其右下角的值&#xff08;粉色圈里&#xff09;

 

5. ∑(i<&#61;k)C(n,i)*C(m,k-i)&#61;C(n&#43;m,k)

卡特兰数

  括号匹配&#xff1a;包含2n个括号的合法括号序列有多少个

    将左括号看作0&#xff0c;右括号看作1&#xff0c;本问题就变成了&#xff1a;求序列任意前缀0的个数大于或等于1的个数

    那么对于一个非法序列&#xff0c;一定存在某个最短前缀中&#xff0c;1的个数比0的个数多1。此时我们将此前缀01取反&#xff0c;剩下的不变&#xff0c;最后得到序列中有n&#43;1个0和n-1个1。

    得到的方案数C(2n,n-1)

    另外&#xff0c;此过程是可逆的&#xff0c;也就意味着对于合法序列&#xff0c;我们可以将其01取反变成非法序列。

  通过网格&#xff1a;从坐标(0,0)到(n,n)&#xff0c;求不跨过对角线的方案数。

    将向右走记作0&#xff0c;向上走记作1&#xff0c;同上。

  三角划分&#xff1a;给定一个凸N边形&#xff0c;求将其三角形化的方案数&#xff08;划分成N-2个三角形&#xff09;

    f 是方案数&#xff0c;h是卡特兰数。

    f(n)&#61;h(n-2) (n&#61;2&#xff0c;3&#xff0c;4&#xff0c;……)

  公式&#xff1a;

  1.递推式&#xff1a;

      

  2.另类递推式&#xff1a;

       

  3.递推式的解&#xff1a;

      

  4.另类递推式的解&#xff1a;

      

  5.打表结果&#xff1a;

    1&#xff0c;1&#xff0c;2&#xff0c;5&#xff0c;14&#xff0c;42&#xff0c;132&#xff0c;429&#xff0c;1430……

  例题&#xff1a;bzoj1485--求catalan数第n项取模

Lucas定理

(待更新补充……&#xff09;

转:https://www.cnblogs.com/Beckinsale/p/7560279.html



推荐阅读
  • 本文深入探讨了HTTP请求和响应对象的使用,详细介绍了如何通过响应对象向客户端发送数据、处理中文乱码问题以及常见的HTTP状态码。此外,还涵盖了文件下载、请求重定向、请求转发等高级功能。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
  • 本主题面向IT专业人士,介绍了Windows Server 2012 R2和Windows Server 2012中的组托管服务账户(gMSA),涵盖了其应用场景、功能改进、硬件和软件要求以及相关资源。 ... [详细]
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
  • 本题探讨了在一个有向图中,如何根据特定规则将城市划分为若干个区域,使得每个区域内的城市之间能够相互到达,并且划分的区域数量最少。题目提供了时间限制和内存限制,要求在给定的城市和道路信息下,计算出最少需要划分的区域数量。 ... [详细]
  • Python 学习是否需要先掌握 C 语言?
    Python 是一门非常适合编程入门的语言,很多人疑惑是否需要先学习 C 语言才能更好地掌握 Python。本文将详细探讨这个问题,并为初学者提供专业的建议。 ... [详细]
  • 本文详细探讨了HTML表单中GET和POST请求的区别,包括它们的工作原理、数据传输方式、安全性及适用场景。同时,通过实例展示了如何在Servlet中处理这两种请求。 ... [详细]
  • 在现代Web应用中,当用户滚动到页面底部时,自动加载更多内容的功能变得越来越普遍。这种无刷新加载技术不仅提升了用户体验,还优化了页面性能。本文将探讨如何实现这一功能,并介绍一些实际应用案例。 ... [详细]
  • 解决Python中 'NoneType' 对象无属性 'find_all' 错误
    本文详细探讨了在Python编程中遇到的常见错误——'NoneType'对象没有属性'find_all',并深入分析其原因及解决方案。通过理解find_all函数的工作原理和常见用法,帮助读者避免类似问题。 ... [详细]
  • 本文探讨了在使用Selenium进行自动化测试时,由于webdriver对象实例化位置不同而导致浏览器闪退的问题,并提供了详细的代码示例和解决方案。 ... [详细]
  • 给定行数 numRows,生成帕斯卡三角形的前 numRows 行。例如,当 numRows 为 5 时,返回的结果应为:[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]。 ... [详细]
  • 解决SVN图标显示异常问题的综合指南
    本文详细探讨了SVN图标无法正常显示的问题,并提供了多种有效的解决方案,涵盖不同环境下的具体操作步骤。通过本文,您将了解如何排查和修复这些常见的SVN图标显示故障。 ... [详细]
  • 本文介绍了一家大型电信公司在SOA/BPM基础设施项目中采用的版本控制和分支管理策略。自项目启动以来,团队通过定义详细的命名约定、测试流程和分支规则,确保了项目的顺利进行并成功投入生产。 ... [详细]
  • 本文探讨了从传统SSM(Spring + Spring MVC + MyBatis)架构到现代化Spring Boot框架的转变过程,详细分析了两者之间的差异和改进。文章结合图表展示了技术演进的关键节点,帮助读者更好地理解这一重要变革。 ... [详细]
  • 比较源文件与备份目录的差异
    本文介绍了如何有效对比源文件和备份目录之间的差异,确保数据完整性和一致性。文章提供了详细的步骤和工具推荐,帮助用户快速识别并解决潜在问题。 ... [详细]
author-avatar
手机用户2502863445
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有