0

我有 3 个数组,每个数组的元素都是 Sortable 的子类,它有一个带有“索引”的 getter,一个正数,表示它在排序中的顺序。

其中 2 个数组按升序排序,而第 3 个数组未排序。最后的数组也必须按升序排序。

如果您想了解细节,第一个数组是等距网格中的建筑物,第二个是由道具制成的,例如树木。第三个(未排序的)充满了“演员”,他们经常四处走动并改变他们的索引。

我曾考虑将所有东西保存在同一个数组中,然后对该数组进行排序,但它基本上一样迟缓。

我已经尝试过数组的本机排序和 sortOn,但它仍然很慢(2 个 concats 大约 10 毫秒,对最终数组进行排序)。它真的太多了,我希望它至少减半,但它会是一个更优雅的解决方案(我相信我的很烂)。

我不能使用 Vectors,因为我不能在 Vector 中组合 3 个子类。我知道它应该可以工作,但它没有。

4

1 回答 1

0

首先,Vector.<Sortable>也适用于子类。其次,为什么不将建筑物和树木放在一个数组中,将actors 放在另一个数组中,然后分两个阶段进行排序——首先是actors,然后是合并。

于 2013-05-28T13:51:15.730 回答