0

我有一些课程,我需要为此实施

compareTo

我需要特定的顺序,例如(伪代码):

static List: item1 item2 item3 ...

我想使用

List.indexOf(itemN) and compare to List.indexOf(itemM)

这个解决方案可以接受吗?

4

1 回答 1

3

是的,这是可以接受的,但除非您的列表非常小,否则效率会非常低。实际上,每次比较两个元素时,它都必须遍历列表以找到第一个元素的索引,然后再次迭代以找到另一个元素的索引。这将是非常低效的。

您最好将 转换List<Item>HashMap<Item, Integer>保存列表中每个项目的索引。或者使用 Guava 的显式排序,它可以为你做到这一点。

于 2013-10-04T14:11:51.653 回答