假设您有随机顺序的项目列表:
itemC, itemB, itemA, itemD
Run Code Online (Sandbox Code Playgroud)
你整理了它们:
itemA, itemB, itemC, itemD
Run Code Online (Sandbox Code Playgroud)
并且您没有足够的内存将它们存储在单独的位置,因此原始序列将丢失.而且,原始顺序是随机的,恢复它会有问题/不可能.
本文提供了此问题的解决方案.
在项目的数据记录中添加一个额外的字段,以便第i个记录将此字段设置为i
因此,我们为每个项添加一个额外的字段:
(itemC,1), (itemB,2), (itemA,3), (itemD, 4)
Run Code Online (Sandbox Code Playgroud)
排序后我们有:
(itemA,3), (itemB,2), (itemC,1), (itemD, 4)
Run Code Online (Sandbox Code Playgroud)
因此,我们可以通过附加字段轻松恢复初始订单排序