标签: java time-complexity
有10000件以上的ArrayList项。我试图通过HashSet使它们成为唯一的,这是O(n)复杂性的一个操作。还有其他算法/ DS可以使Collection唯一,复杂度低于O(n)吗?
ArrayList
HashSet
Collection
答案 0 :(得分:7)
不,这几乎是不可能的。 O(n)是通过ArrayList读取的最小复杂度,更不用说对元素做任何事情了。
答案 1 :(得分:1)
如果不经历所有元素,则无法确认您的集合是否具有所有唯一值。因此,O(n)是最小的。