错排算法
来源:互联网 发布:python .如何使用 编辑:程序博客网 时间:2024/05/20 14:43
这个排列组合真心纠结,想了一天多。还是没想明白,百度了下。学数学的都是天才啊,羡慕不来。
下面说说错排推导。
当n个编号元素放在n个编号位置,元素编号与位置编号各不对应的方法数用M(n)表示,那么M(n-1)就表示n-1个编号元素放在n-1个编号位置,各不对应的方法数,其它类推.
第一步,把第n个元素放在一个位置,比如位置k,一共有n-1种方法;
第二步,放编号为k的元素,这时有两种情况⑴把它放到位置n,那么,对于剩下的n-1个元素,由于第k个元素放到了位置n,剩下n-2个元素就有M(n-2)种方法;⑵第k个元素不把它放到位置n,这时,对于这n-1个元素,有M(n-1)种方法;
综上得到
M(n)=(n-1)[M(n-2)+M(n-1)]
特殊地,M⑴=0,M⑵=1
换一个就是n-1中排序,其中分为两种,相互交换和不相互交换。所以n个元素的错排就是 (n-1)*(相互交换+不相互交换)
0 0
- 错排算法
- 算法之------错排问题
- java 错排算法实现
- 算法之错排公式 错排(加组合)
- 算法——错排问题
- 算法----快排算法
- 快排算法
- 排课算法
- 倒排算法实现
- 排课算法研究
- 快排算法
- 矩形排料算法
- 快排算法
- 快排算法cmp
- 快排算法
- 算法导论--->快排
- 矩形排料算法
- 排序算法--快排
- 2030汉字统计
- 2031进制转换
- 杭电2032(杨辉三角)
- 2037今年暑假不AC
- 2045不容易系列之(3)—— LELE…
- 错排算法
- 原创测试
- 2016年01月28日
- 2052picture
- iOS Swift _Nullable 与 Android 注解帮助编译时检查 - 两家好像步调开始一致一段时间了
- 2049不容易系列之(4)——考新郎
- stm32的两种固件下载模式:JTAG和SWD
- 2057A + B Again
- 2059龟兔赛跑