@SuppressWarnings("unchecked")
public static <T> List<T> eliminateDuplicate(List<T> list) {
Set<T> set = new HashSet<T>(list);
return (List<T>) Arrays.asList(set.toArray());
}
想要检查上面简单代码的空间复杂性,以消除愚蠢。
总O(3n)与O(n)相同。
你能帮我确认一下吗?
答案 0 :(得分:0)
基本上,是的。总空间利用率为O(N)
,其中最终(重复数据删除)列表大小为N
。
但是Arrays.asList(...)
正在创建一个占用O(1)
空间的包装器(除了它正在包装的数组之外)。