逆序找排列

来源:百度知道 编辑:UC知道 时间:2024/06/16 20:21:19
对于一个数列,每个数的逆序值的是位于这个数前面的比这个数大的数的个数,比如说对于数列4、2、3、5、1,4的逆序值为0,2的逆序值为1,3的逆序值为1,5的逆序值为0,1的逆序值为4。这里有一个按从左到右顺序给出的逆序值序列,你的任务是根据这些逆序值找出原有的排列。
要c++的解题思路

先把数列的元素按从小到大排列,然后根据逆序值从后到前依次处理每个元素(调换数列中元素的次序),大概就是这个思路…

可以利用归并排序来实现 效率比较高的一种方法