交错排列(Alternating Permutation)问题详解
- 写在前面
- 交错排列问题简介
- 求解过程
- 总结
写在前面
本文详细讨论一道组合数学的经典问题:交错排列问题,参考总结自组合学大师Richard P. Stanley的文章A Survey of Alternating Permutations,以及自己的一点理解,如果有不对的地方请大家指出,谢谢!文章有需要者可直接点击链接下载或从我分享的资源中下载。
交错排列问题简介
设π=a1a2⋯an∈Zn+!,\pi=a_1a_2\cdots a_n\in\mathbb{Z}_n^+!,π=a1a2⋯an∈Zn+!, 如果排列 π\piπ满足a1>a2<a3>⋯,a_1>a_2<a_3>\cdots,a1>a2<a3>⋯, 则称 π\piπ是nnn元集Zn+\mathbb{Z}_n^+Zn+上的一个交错排列;如果排列π\piπ满足a1<a2>a3<⋯,a_1<a_2>a_3<\cdots,a1<a2>a3<⋯, 则称 π\piπ是nnn元集Zn+\mathbb{Z}_n^+Zn+上的一个反交错排列。
记Zn+!\mathbb{Z}_n^+!Zn+!中交错排列的个数为En(E_n(En(称为Euler数)))。
下面我们采用递推关系及指数型生成函数的方法求解EnE_nEn的表达式。
求解过程
令0⩽k⩽n0\leqslant k \leqslant n0⩽k⩽n, 从Zn+!\mathbb{Z}_n^{+}!Zn+!中选取其kkk子集SSS, 有(nk)\binom{n}{k}(kn)种取法; 由反交错排列定义,可设Sˉ=Zn+!−S\bar{S}=\mathbb{Z}_n^+!-SSˉ=Zn+!−S,在SSS中选取反交错排列uuu,有EkE_kEk种取法,并在 Sˉ\bar{S}Sˉ 中选取反交错排列vvv,有En−kE_{n-k}En−k种取法;
设www为n+1n+1n+1元排列,包含排列uuu的逆序列((( 即,若uuu表示为u1u2⋯uku_1u_2\cdots u_ku1u2⋯uk,则uuu的逆序列表示为uk⋯u2u1u_k\cdots u_2u_1uk⋯u2u1 )))、元素n+1n+1n+1和排列vvv,
则当n⩾2n\geqslant2n⩾2时,可以这种排列的方式得到唯一的www (((其实可以分两种情况,即 kkk 为奇数或偶数,但在这两种情况下只需变换元素n+1n+1n+1的位置,即可确定唯一的序列www ))),其中包含交错排列和反交错排列。
于是可在交错排列与反交错排列间建立双射,反交错排列www的个数为2En+1,2E_{n+1},2En+1, 所以可得到
2En+1=∑k=0n(nk)EkEn−k,n⩾1.2 E_{n+1}=\sum_{k=0}^{n}\binom{n}{k} E_{k} E_{n-k}, \quad n \geqslant 1.2En+1=k=0∑n(kn)EkEn−k,n⩾1.
设EnE_nEn的指数型母函数为
y=∑n⩾0Enxnn!,y=\sum_{n \geqslant 0}{E_n \frac{x^n}{n!}}, y=n⩾0∑Enn!xn,
并由初值条件E0=E1=1,E_0=E_1=1,E0=E1=1,
两边同乘以xnn!\frac{x^n}{n!}n!xn并对nnn从零到∞\infty∞求和,并应用指数型母函数的乘法公式,得到2y′=y2+1,y(0)=1.2y'=y^2+1, \quad y(0)=1.2y′=y2+1,y(0)=1. 分离变量,可得:
y=tan(x2+π4)=1+tanx21−tanx2=1+sinxcosx=secx+tanx,y=\tan (\frac x2+\frac \pi4)=\frac{1+\tan \frac x2}{1-\tan\frac x2}=\frac{1+\sin x}{\cos x}=\sec x+\tan x, y=tan(2x+4π)=1−tan2x1+tan2x=cosx1+sinx=secx+tanx,
故
∑n⩾0Enxnn!=secx+tanx.\sum_{n \geqslant 0}{E_n \frac{x^n}{n!}}=\sec x +\tan x. n⩾0∑Enn!xn=secx+tanx.
由于tanx\tan xtanx为奇函数而secx\sec xsecx为偶函数,所以:
tanx=∑n≥0E2n+1x2n+1(2n+1)!\tan x=\sum_{n \geq 0} E_{2n+1} \frac{x^{2n+1}}{(2n+1) !}tanx=n≥0∑E2n+1(2n+1)!x2n+1 secx=∑n≥0E2nx2n(2n)!\sec x=\sum_{n \geq 0} E_{2n} \frac{x^{2n}}{(2n) !} secx=n≥0∑E2n(2n)!x2n
综上可得:
∑n≥0Enxnn!=secx+tanx=1+x+x22!+2x33!+5x44!+16x55!+61x66!+⋯.\begin{aligned} \sum_{n \geq 0} E_{n} \frac{x^{n}}{n !} &=\sec x+\tan x \\ &=1+x+\frac{x^{2}}{2 !}+2 \frac{x^{3}}{3 !}+5 \frac{x^{4}}{4 !}+16 \frac{x^{5}}{5 !}+61 \frac{x^{6}}{6 !}+\cdots. \end{aligned}n≥0∑Enn!xn=secx+tanx=1+x+2!x2+23!x3+54!x4+165!x5+616!x6+⋯.
总结
本文针对交错排列问题进行了分析,想要深入分析交错排列问题和 EulerEulerEuler 数的相关结论,请见上面所述论文。
交错排列(Alternating Permutation)问题详解相关推荐
- amoled led 排列_AMOLED-显示原理详解.pdf
AMOLED-显示原理详解 AMOLED 显示原理详解 2016/05/25 Agenda 什么是AMOLED AMOLED vs LCD PMOLED AMOLED vs Retina AMOLED ...
- 【算法】组合数学——排列数生成算法详解(一)
组合数学中的全排列深成算法历来是组合数学考试的重要考察点,因此在这里我简单的介绍一下6种全排列生成算法的详细过程,并借此比较它们之间的优劣之处. 不论是哪种全排列生成算法,都遵循着"原排列& ...
- Java递归求全排列详解
Java递归求全排列详解 推荐博客: 博客园Java全排列递归算法,结尾的解释很形象了 csdn的大佬写的,和我下面的代码思路基本一致 全排列的递归思想解释: 全排列的数学定义就不再过多解释,考虑递归 ...
- [学习C++ ]C++ STL 全排列函数详解(排列组合与匹配算法)--1
一.概念 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列.当m=n时所有的排列情况叫全排列.如果这组数有n个,那么全排列数为n!个. 比如a ...
- CSS之排列系列--块级元素、内联元素、内联块元素--区别/详解
原文网址:CSS之排列系列--块级元素.内联元素.内联块元素--区别/详解_IT利刃出鞘的博客-CSDN博客 简介 本文介绍CSS的块级元素(block).内联元素(inline)和内联块元素(inl ...
- 面试-Java【之】(revers)递归实现字符串倒序排列(详解)
面试-Java[之](revers)递归实现字符串倒序排列(详解) 实现源码详解 <目录:Java-JDBC学习> <幕> 实现源码详解 public class Test { ...
- Android recycleview使用详解,recycleview实现九宫格布局即横向排列,recycleview设置item占位数量大号item或小号item
1.添加recycleview依赖 compile('com.android.support:recyclerview-v7:25.1.1') {force = true } 2.item.xml & ...
- 剑指offer(26-33题)详解
文章目录 26 二叉搜索树与双向链表 27 字符串的排列 28 数字中出现次数超过一半的数字(待优化)★ 29 最小的K个数 30 连续子数组最大和 31 整数中1出现的次数 32 把数组排成最小的数 ...
- 图像和流媒体 -- 详解YUV数据格式
如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78283369 我们在讲 FFmpeg 系列的时候,有提到 YUV 的.其中包 ...
最新文章
- JSP 三 :九大隐式对象
- 推荐8个舍不得分享的实用软件和网站,解决很多需求
- C++函数模板Demo - win32 版
- Python语言学习:Python常用自带库(imageio、pickle)简介、使用方法之详细攻略
- 在千万级的数据库查询中,如何提高效率?
- Nacos配置中心用法详细介绍
- buck变换器设计matlab_一种用于Boost PFC变换器的改进关断时间控制策略
- 关于juniper配速小记
- 行进位,超前进位 ,行波进位 ,并行进位有什么区别
- [Matlab]利用Simulink进行模型设计和代码自动生成
- mapgis10原创2019视频教程
- 【Python量化】 Scipy库求解最优资产投资组合
- 【ZookeeperDubbo系列二】Zookeeper+Dubbo集群安装配置详解
- FH162儿童电子液晶手写板方案芯片开发
- 将Excel表格导入到数据库中
- 找手机ic库存回收公司
- JAVA开发讲义(一)-Java的自白
- 2021年美国大学生数学建模竞赛(题目详细介绍)
- php-ews发送邮件,node.js 基于 STMP 协议和 EWS 协议发送邮件
- 为什么人生病了就要静养呢?
热门文章
- 使用Java实现发送email邮件
- amazeui学习笔记二(进阶开发2)--Web组件简介Web Component
- fastjson和json-lib的区别
- 有关锁和内存使用的DMV
- 对.NET的GC(垃圾回收)的理解都存在错误认识
- js 下拉层级多选_js控制的多级下拉菜单
- flinksql on zeppelin安装及使用
- 计算机主板用塑料做的好吗,电脑主板包装的塑料袋为什么是用透明胶封的,这样...-卓优商学问答...
- GaussDB(for MySQL) NDP与PQ测试体验
- DTC精彩回顾—金学东:从可迁到好迁:人大金仓打造国产数据库生态 助力企业国产化转型...