康托展开

同步:https://zhufn.fun/archives/10/

作用

求一个排列结果是在全排列中的第几项

推导

先照搬PPT里的过程。

举例:对于集合{1,2,3},求{3,2,1}是全排列中的第几项?

那么,{3,2,1}之前的有三种情况:

  1. 第一项<3:

    一定在{3,2,1}前,此时第一项有两种选择,后两位随意,则共有

  2. 第一项=3:

    则第二项<2时结果小于{3,2,1}

  3. 前两项相等:

    没有比{3,2,1}小的

总共2*2!+1*1!+0=5

计算公式

其中pi表示在没选中的元素中比ai小的的数量

逆推

给定一个序号,求出排列结果。

例:对于集合{1,2,3,4,5,6},求出全排列的第100项(从0开始计数)。

这个。。。直接上张ppt吧。

PPT

posted @ 2019-01-14 18:12  ZhuFN  阅读(158)  评论(0编辑  收藏  举报