zoukankan      html  css  js  c++  java
  • 排列,逆序

    1,2,3...,n这n个数字组成的一个有序数组称为一个n级(阶)排列,共有A(n,n)=n!个不同的排列。
    在一个n阶排列中如果较大的数排在较小的数的前面,,则称这两个数构成一个逆序.一个排列中的所有
    逆序的总和叫做这个排列的逆序数。逆序数为奇数的排列叫做奇排列,逆序数为偶数的排列叫做偶排列
    特别的,自然排列是逆序数为0的排列,算做是偶排列。

    把一个排列中的某两个数位置对换,而其余的数位置不变,就得到一个排列,这样的一个变换叫做对换
    定理:对换改变排列的奇偶性
    证:
    1、当对换的两个数在排列中是相邻时,排列...ab...---->...ba...,这里...表示那些位置不变的数,显然
    ab对换后,它们的逆序数不变,当 a<b时,对换之后,它们构成逆序,逆序数+1,同理a > b时
    对换之后,逆序数-1
    2、设排列为a(i1)(i2)...(in)b , ab对换--->b(i1)(i2)...(in)a,
    我们可以这么看,b做n+1次相邻对换---->ba(i1)(i2)...(in),
    然后a做n次相邻对换---->b(i1)(i2)...(in)a,所以一共做了2n+1次相邻对换,而2n+1为奇数
    由1,2可得,对换改变排列的奇偶性。

    n个数构成的所有排列中,奇偶排列各占据一半

  • 相关阅读:
    种类并查集
    51nod 1241 特殊的排序(动态规划)
    NKU 专题一 题解
    51nod 1040 最大公约数之和
    cf #419(div2) C.Karen and Game(贪心)
    BZOJ 2648 SJY摆棋子(KD-Tree)
    BZOJ 4154 [Ipsc2015]Generating Synergy(KD-Tree)
    hdu 2966 In case of failure(KD-tree)
    hdu 6071 Lazy Running(同余最短路)
    hdu 6070 Dirt Ratio(分数规划)
  • 原文地址:https://www.cnblogs.com/justPassBy/p/3971413.html
Copyright © 2011-2022 走看看