文章目录

  • 一、集合组合、一一对应模型分析示例

排列组合参考博客 :

  • 【组合数学】基本计数原则 ( 加法原则 | 乘法原则 )
  • 【组合数学】集合的排列组合问题示例 ( 排列 | 组合 | 圆排列 | 二项式定理 )
  • 【组合数学】排列组合 ( 排列组合内容概要 | 选取问题 | 集合排列 | 集合组合 )
  • 【组合数学】排列组合 ( 排列组合示例 )
  • 【组合数学】排列组合 ( 多重集排列 | 多重集全排列 | 多重集非全排列 所有元素重复度大于排列数 | 多重集非全排列 某些元素重复度小于排列数 )
  • 【组合数学】排列组合 ( 多重集组合数 | 所有元素重复度大于组合数 | 多重集组合数 推导 1 分割线推导 | 多重集组合数 推导 2 不定方程非负整数解个数推导 )
  • 【组合数学】排列组合 ( 多重集组合数示例 | 三个计数模型 | 选取问题 | 多重集组合问题 | 不定方程非负整数解问题 )
  • 【组合数学】排列组合 ( 两个计数原则、集合排列示例 | 集合排列、圆排列示例 )

一、集合组合、一一对应模型分析示例


将 2n2n2n 个人分成 nnn 组 , 每组 222 人 , 有多少种分法 ?

先确定该问题是否是选取问题 , 元素是否重复 , 选取是否有序 ,

  • 不可重复的元素 , 有序的选取 , 对应 集合的排列
  • 不可重复的元素 , 无序的选取 , 对应 集合的组合
  • 可重复的元素 , 有序的选取 , 对应 多重集的排列
  • 可重复的元素 , 无序的选取 , 对应 多重集的组合

2n2n2n 个人 , 人肯定是不重复的 , 分成 nnn 组 , 这里的分组是没有区别的 , 相当于集合的划分 ;

另外还有限制条件 , 每组只能放 222 个元素 ;

原始的简单模型 , 如 分类 ( 加法 ) , 分步 ( 乘法 ) , 集合排列 , 集合组合 , 多重集排列 , 多重集组合 , 没有对应的模型 , 无法直接使用 ;

不是简单的选取问题 ;

这里需要考虑 组有区别 , 组没有区别 两种情况 ;

分组有区别的话 , 分成 nnn 组 , 先放第 111 组 , 选 222 个人 , 再放第 222 组 , 选 222 个人 , ⋯\cdots⋯ 这种方案是 可以计算出来的 ;

分组没有区别 , 此时需要观察 分组有区别 和 没有区别 的差别 :

分组没有区别 , 得到一种方法 , 然后对 nnn 个分组进行全排列 , 有 n!n!n! 种排列方法 , 就得到了分组有区别的方案个数 ;

这里将 分组有区别方案数 与 分组没有区别方案数 建立对应关系 :

分组没有区别方案数×n!=分组有区别方案数分组没有区别方案数 \times n! = 分组有区别方案数分组没有区别方案数×n!=分组有区别方案数

分组有区别方案数 是可以计算出来的 , 然后 除以 n!n!n! , 即可得到 分组没有区别的方案数 ;

分组有区别 , 按照 分步处理 的方案 :

① 第 111 步 : 从 2n2n2n 个元素中 , 选取 222 个元素 , 有 C(2n,2)C(2n , 2)C(2n,2) 种方案 ;

② 第 222 步 : 从 2n−22n - 22n−2 个元素中 , 选取 222 个元素 , 有 C(2n−2,2)C(2n - 2 , 2)C(2n−2,2) 种方案 ;

③ 第 333 步 : 从 2n−42n - 42n−4 个元素中 , 选取 222 个元素 , 有 C(2n−4,2)C(2n - 4 , 2)C(2n−4,2) 种方案 ;

⋮\vdots⋮

④ 第 nnn 步 : 从 2n−(2n−2)2n - ( 2n - 2 )2n−(2n−2) 个元素中 , 选取 222 个元素 , 有 C(2n−(2n−2),2)C(2n - ( 2n - 2 ) , 2)C(2n−(2n−2),2) 种方案 ; 也就是 111 种方案 ;

排列组合公式

  • 排列 : P(n,r)=n!(n−r)!P(n,r) = \dfrac{n!}{(n-r)!}P(n,r)=(n−r)!n!​
  • 组合 : C(n,r)=P(n,r)r!=n!r!(n−r)!C(n, r) = \dfrac{P(n,r)}{r!} = \dfrac{n!}{r!(n-r)!}C(n,r)=r!P(n,r)​=r!(n−r)!n!​

分步处理 需要使用乘法原则 , 将 nnn 步的方案数相乘 :

N=C(2n,2)C(2n−2,2)C(2n−4,2)⋯C(2n−(2n−2),2)=2n!2!×(2n−2)!×(2n−2)!2!×(2n−4)!⋯(2n−(2n−2))!2!×(2n−(2n−2)−2)!⏟n个分步相乘前后可以约掉很多阶乘=(2n)!(2!)n\begin{array}{lcl} N &=& C(2n , 2) C(2n - 2 , 2) C(2n - 4 , 2) \cdots C(2n - ( 2n - 2 ) , 2) \\\\ &=& \begin{matrix} \underbrace{ \cfrac{2n!}{2! \times (2n-2)!} \times \cfrac{(2n-2)!}{2! \times (2n-4)!} \cdots \cfrac{(2n - ( 2n - 2 ))!}{2! \times (2n - ( 2n - 2 ) - 2)!} } \\ n 个分步相乘 \end{matrix} 前后可以约掉很多阶乘\\\\ &=& \cfrac{(2n)!}{(2!)^n} \end{array}N​===​C(2n,2)C(2n−2,2)C(2n−4,2)⋯C(2n−(2n−2),2)2!×(2n−2)!2n!​×2!×(2n−4)!(2n−2)!​⋯2!×(2n−(2n−2)−2)!(2n−(2n−2))!​​n个分步相乘​前后可以约掉很多阶乘(2!)n(2n)!​​

分组有区别的方案个数是 (2n)!(2!)n\cfrac{(2n)!}{(2!)^n}(2!)n(2n)!​ 个 ;

根据 分组没有区别方案数×n!=分组有区别方案数分组没有区别方案数 \times n! = 分组有区别方案数分组没有区别方案数×n!=分组有区别方案数

公式 ;

分组有区别方案数 是可以计算出来的 , 然后 除以 n!n!n! , 即可得到 分组没有区别的方案数 ;

最终结果是 (2n)!(2!)nn!\cfrac{(2n)!}{(2!)^n n!}(2!)nn!(2n)!​

该问题不是简单的使用 原始的简单模型 , 如 分类 ( 加法 ) , 分步 ( 乘法 ) , 集合排列 , 集合组合 , 多重集排列 , 多重集组合 ;

而是将不可计算的模型 , 对应到一个可计算的模型中 , 然后计算出该模型 的重复度

【组合数学】排列组合 ( 集合组合、一一对应模型分析示例 )相关推荐

  1. 【组合数学】排列组合 ( 集合排列、分步处理示例 )

    文章目录 一.集合排列.分步处理示例 排列组合参考博客 : [组合数学]基本计数原则 ( 加法原则 | 乘法原则 ) [组合数学]集合的排列组合问题示例 ( 排列 | 组合 | 圆排列 | 二项式定理 ...

  2. 组合数学——排列组合经典模型

    组合数学--排列组合经典模型 球盒模型 n n n个不同的球放入 m m m个相同的盒子里面,盒子不允许为空 这和第二类斯特林数的定义相同,答案为 { n m } {n \brace m} {mn​} ...

  3. 【组合数学】排列组合 ( 排列组合内容概要 | 选取问题 | 集合排列 | 集合组合 )

    文章目录 一.排列组合内容概要 二.选取问题 三.集合排列 四.环排列 五.集合组合 参考博客 : [组合数学]基本计数原则 ( 加法原则 | 乘法原则 ) [组合数学]集合的排列组合问题示例 ( 排 ...

  4. 组合数学--排列组合

    组合数学--排列组合 1. 概述 1.1 应用 1.2 三大问题 2. 排列组合 2.1 两大法则 2.2 排列 3. 放球模型 4. 模型转换 5. 线性方程的解 5.1 若干等式及其组合意义 6. ...

  5. 组合数学-排列组合整理

    此文是我整理组合数学排列组合知识的博文,排列组合从零开始...加油! 1.重复组合: 从n种不同元素中取出m的元素(方法是从n个元素中每次取出一个后,放回,再取另外一个,直到取出m个元素),每一种元素 ...

  6. Kaggle泰坦尼克号数据机器学习实战:从缺失值处理、数据探索性分析、组合特征生成到多模型构建

    Kaggle泰坦尼克号数据机器学习实战:从缺失值处理.数据探索性分析.组合特征生成到多模型构建 泰坦尼克号的沉没是历史上最为人熟知的海难事件之一. 1912 年 4 月 15 日,在她的处女航中,泰坦 ...

  7. 排列公式和组合公式_排列与组合:排列公式与组合公式之间有什么区别?

    排列公式和组合公式 Here's the short version. 这是简短的版本. Let's take ringing bells in a church as an example. 让我们 ...

  8. 2-2 组合优化问题-常用模型与通用求解器

    组合优化问题常用模型 组合优化问题常常难以求解,我们可以把这些转化为目前已经有成熟求解器的模型. 1. 可满足性问题(Satisfiability, SAT) 上一节已经讲过,SAT 是一个 NPC ...

  9. Java设计模式之组合模式(UML类图分析+代码详解)

    大家好,我是一名在算法之路上不断前进的小小程序猿!体会算法之美,领悟算法的智慧~ 希望各位博友走过路过可以给我点个免费的赞,你们的支持是我不断前进的动力!! 加油吧!未来可期!! 本文将介绍java设 ...

最新文章

  1. 十二年来最强购房潮:报价 6 次,疯狂加价,华人程序员在硅谷买房太难了!...
  2. ASP中Randomize随机函数的使用
  3. Linq怎么支持Monad
  4. 多元分布和狄利克雷分布
  5. Android URLconnection
  6. iphone安装Deb文件
  7. 响应式编程简介之:Reactor
  8. 第一章 Burp Suite 安装和环境配置
  9. Cordova android框架详解
  10. matlab生成数据以二进制数据格式写入txt文件中
  11. excel导入自定义单元格式yyyymd hmmss时间方法
  12. UE编辑器加入鼠标右键
  13. 【python爬虫】爬取链家二手房数据
  14. 张量(五):张量学习——BGCP
  15. 三国大时代java_横跨,塞班、安卓、pc的国产良心作《三国大时代》系列
  16. PyQt5系列教程(二)利用QtDesigner设计UI界面
  17. 他写代码如入定,人称阿里“扫地僧,java自学教程百度云
  18. 吉西他滨纳米载药细胞膜囊泡|红细胞囊泡包载的纳米药物(齐岳试剂)
  19. oracle将以逗号分隔字符串转多行
  20. python实现青蛙跳台阶算法

热门文章

  1. 猫生病了,老鼠在干嘛?
  2. android 输出分辨率6,Android4.0 输出分辨率改为1280*720后,出现Out of Memory
  3. React ajax 发送请求(六)
  4. Python课程设计:汽车销售管理系统
  5. 东软医疗冲刺港股背后:国产化先驱多元布局核心产业,持续创新筑起发展护城河
  6. vue数据恢复_SQL Server 数据库备份还原和数据恢复
  7. 使用gdb调试程序完全教程
  8. 使用System.ComponentModel.DataAnnotations验证字段数据正确性
  9. 中国四大骨干网 六大运营商 八大节点
  10. 通过仿制药质量和疗效一致性评价的公告