n级排列

n级排列

由1,2,...,n组成的一个有序数组称为一个n级排列。
例如,2431是一个四级排列,45321是一个五级排列。
注:n级排列的总数是 n(n-1)(n-2)...1=n!

逆序

在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序

逆序数

一个排列中逆序的总数就称为这个排列的逆序数

例如2431中,21、43、41、31是逆序,2431的逆序数就是4;而45321的逆序数是9

注:排列 j1,j2,....,jn的逆序数记为 τ(j1,j2,...,jn)

奇/偶排列

逆序数为奇数的排列称为奇排列。逆序数为偶数的排列称为偶排列
例如,2431是偶排列,45321是奇排列, 12.....n 的逆序数是零,因而是偶排列。

完整代码戳这里

在线演示1在线演示2

点赞
收藏

评论区

加载中...

相关推荐

C 语言代码大全

1两个数组的合并题目描述已知数组a中有m个按升序排列的元素,数组b中有n个按降序排列的元素,编程将a与b中的所有元素按降序存入数组c中。输入输入有两行,第一行首先是一个正整数m,然后是m个整数;第二行首先是一个正整数n,然后是n个整数,m,n均小于等于1000000。输出输出合并后的mn个整数,数据之间用空格隔开。输出占一行。样例输入4

python百题大冲关-确定字符串是否是另一个的排列

挑战介绍实现一个算法来识别一个字符串str2是否是另一个字符串str1的排列。排列的解释如下:如果将str1的字符拆分开,重新排列后再拼接起来,能够得到str2,那么就说字符串str2是字符串str1的排列。本次挑战中,你需要在permutation.py文件中补充函数is_permutation的空缺部分

python刷题-数列排序

资源限制时间限制:1.0s内存限制:512.0MB问题描述  给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<n<200输入格式  第一行为一个整数n。  第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式  输出一行,按从小到大的顺序输出排序后的数列。样例输入583649样例输出34689···

人工智能数学基础-线性代数4:矩阵及矩阵运算

一、矩阵定义矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合,定义如下:由m×n个数aij排成的m行n列的数表称为m行n列的矩阵,简称m×n矩阵。记作:这m×n个数称为矩阵A的元素,简称为元,数aij位于矩阵A的第i行第j列,称为矩阵A的(i,j)元,以数aij为(i,j)元的矩阵可记为(aij)或(aij)m×n,m×

人工智能数学基础6:无穷大和无穷小的大小比较以及斯特林公式

1.无穷大的大小排列n、a1、a2、a3为自然数(表述为n∈N),n趋于无穷大(n→∞),a1、a2、a3大于1,则下列实数的大小排列为:2\.无穷小的大小排列将无穷大的大小排列公式中比较的数字作为分母,1作为分子,大于号改为小于号,则可以作为无穷小大小排列公式:3.极限值n为自然数(表述为n∈N),n趋于无穷大(n→∞),a2、a3大于1,则

人工智能数学基础-线性代数5:行列式求解线性方程组和拉普拉斯定理

一、逆序及逆序数在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。也就是说,对于n个不同的元素,先规定各元素之间有一个标准次序(例如n个不同的自然数,可规定从小到大为标准次序),于是在这n个元素的任一排列中,当某两个元素的实际先后次序与标准次序不同时,就说有1个逆序

n级排列 - HelloWorld