【发布时间】:2016-04-16 07:27:42
【问题描述】:
如何对整数数组进行排序,但保留其原始排序顺序以便稍后撤消我的内存需求非常有限,并且没有空间用于原始、索引、字段或事务范围的任何单独克隆副本?
【问题讨论】:
-
一种选择是使用数组列表结构,其中数组中的每个节点都指向它曾经所在的前一个存储桶。但是,复制操作可能需要暂时将空间加倍。
-
除特殊情况外,排序是不可逆的。所以你需要一个持久的置换向量,将排序数组中的索引映射到原始数组中的索引。
-
只有 8 个整数。 1,2,3,4,5,6,7,8 我只有 9 个桶 8 个用于数据和一个用于气泡交换。