在我的应用程序中,我让用户选择他们希望如何排列数据(排序或未排序) 当他们选择排序时,我只是排序一切。那部分对我来说很简单。
但是,当他们选择排序,然后选择未排序时,我想按照数据库给我的顺序向他们显示数据(即我不想只是调用randomize()或者其他东西)。
是否有一种有效的方式来解决"一个数组,我自己整理而不维护原始数组的副本?
答案 0 :(得分:6)
您可以做的一件事是在每条记录中保留一个额外的(隐藏的)整数值,该值记录您从数据库接收记录的原始顺序。当用户选择“未排序”时,按原始顺序值排序。
答案 1 :(得分:1)
为什么不保留原始收藏品的副本?或者永远不要在适当的位置修改它,而是在用户请求排序时生成原始集合的已排序副本。这似乎比保留原始订单价值或类似的东西要简单得多。