逆序数问题以及程序实现。

逆序数问题以及程序实现。

5 1 7 9 2 4

1+3 + 3 = 7 

 

快速手算方法: 遍历数组,找出前面比它大的数相加。

简单的逆序数手算很容易算出来,如果数组很长,手算就容易出错,需要使用程序辅助。

O(N^2)的逆序数代码:

逆序数问题以及程序实现。

1+2+...+n-1 = n(n-1)/2

特殊值法,n=1

逆序数问题以及程序实现。

逆序数问题以及程序实现。

特殊值法,n=2

x1,x2的逆序数为1,x2和x1的逆序数为0

 

使用冒泡排序求逆序数:

顺便提一下,冒泡排序法中的交换次数又称为反序数或逆序数,可用于体现数列的错乱程度。

 

使用归并排序分治的方法求逆序数