-
11087 统计逆序对
说明: Description
设a[0…n-1]是一个包含n个数的数组,若在ia[j],则称(i, j)为a数组的一个逆序对(inversion)。
比如 有5个逆序对。请采用类似“合并排序算法”的分治思路以O(nlogn)的效率来实现逆序对的统计。
一个n个元素序列的逆序对个数由三部分构成:
(1)它的左半部分逆序对的个数,(2)加上右半部分逆序对的个数,(3)再加上左半部分元素大于右半部分元素的数量。
其中前两部分(1)和(2)由递归来实现。要保证算法最后效率O(nlogn),第三部分(3)应该如何实现?
此题请勿采用O(n^2)的简单枚举算法来实现。
并思考如下问题:
(1)怎样的数组含有最多的逆序对?最多的又是多少个呢?
(2)插入排序的运行时间和数组中逆序对的个数有关系吗?什么关系?
输入格式
第一行:n,表示接下来要输入n个元素,n不超过10000。
第二行:n个元素序列。
输出格式
逆序对的个数。
输入样例
5
2 3 8 6 1
输出样例
5(Set a[0... N-1] is a n array containing n numbers. If there is a [i] > a [j] i n the case of I < j, then (i, j) is a n inversion pair of a array.
For example, has five reverse pairs. Please use the idea of "merge sorting algorithm" to achieve the statistics of inverse pairs with O (nlogn) efficiency.
The number of inverse pairs of a sequence of n elements consists of three parts:
(1) The number of reverse pairs in the left half, (2) the number of reverse pairs in the right half, (3) the number of elements in the left half is greater than that in the right half.
The first two parts (1) and (2) are implemented by recursion. To ensure the final efficiency of the algorithm O (nlogn), how should the third part (3) be implemented?
Do not use O (n ^ 2) simple enumeration algorithm to solve this problem.)
- 2019-01-07 23:52:06下载
- 积分:1
-
SONGCIFA
松弛法解方程C程序(relaxation method of solving equations C program.)
- 2006-11-24 11:23:20下载
- 积分:1
-
AddMatrix
用三元组表为结构,实现稀疏矩阵的加法并输出。(Achieve sparse matrix addition)
- 2014-02-19 19:59:00下载
- 积分:1
-
PID自动控制电机转速
利用pid算法控制电机转速,转速可调,数码管显示,初学者实用(Using PID algorithm to control motor speed, adjustable speed, digital display, beginners practical)
- 2020-06-22 16:00:01下载
- 积分:1
-
adpcm_c_code
PCM数据通信压缩算法,c语言编写,适合移植到单片机、dsp等目标系统上。(PCM data communications compression algorithm, c language, suitable for transplant to the microcontroller, dsp goals systems.)
- 2007-04-02 14:03:37下载
- 积分:1
-
EuDist2
计算矩阵内空间任意两点之间或者两个矩阵之间的欧式距离的代码。(The space between any two points is calculated matrix code or Euclidean distance between the two matrices.)
- 2021-04-05 14:59:03下载
- 积分:1
-
df
说明: 经过个人修改的matlab科学计算程序,供初学者使用(MATLAB scientific computing and visualization simulation literature amended program can achieve numerical conversion between)
- 2012-08-06 19:12:57下载
- 积分:1
-
FEMC
这里包含了有限元法的一本书籍,和有限元法的C++代码。希望对各位有所帮助(This contains a finite element method books, and the finite element method of C++ code. I hope to help you)
- 2016-06-02 09:20:34下载
- 积分:1
-
Gauss---Seidel-Algorithm
合肥工业大学数值分析(计算方法A)中高斯—塞德尔算法的实现(Gauss- Seidel Algorithm)
- 2011-11-30 14:45:19下载
- 积分:1
-
MKJ
有限元法利用铁摩辛柯梁计算转轴质量刚度阻尼矩阵(Finite element method using the Timoshenko beam to calculate the stiffness and damping matrix of the shaft quality)
- 2012-06-14 19:01:41下载
- 积分:1