有没有更好的方法从线性数组中删除重复的元素?

时间:2013-10-09 21:09:16

标签: c

我正在尝试从线性数组中删除重复元素。但我不想在O(n ^ 2)时间复杂度中执行此操作。(因为我使用两个for循环,它们将在n中运行n次最糟糕的情况) 有没有办法在更短的时间内完成这个? 任何其他方法都会有很大帮助。 谢谢!

1 个答案:

答案 0 :(得分:3)

您可以在O(n log n)中排序,然后在一个额外的循环中删除重复项,只需检查是否有任何相邻元素。时间:O(n log n)