我正在解决一个问题,我必须根据排序后的数组创建一个唯一的数组,该数组可以包含重复的元素。
我使用以下代码解决了该解决方案:
for (int i = 0; i < sorted.Length - 1; i++)
{
if (sorted[i] == sorted[i + 1])
{
unqiueList.Add(sorted[i]);
int j = i + 1;
while (j < sorted.Length)
{
if (sorted[i] != sorted[j])
{
break;
}
j++;
i++;
}
}
else
{
unqiueList.Add(sorted[i]);
}
}
现在,我想知道此解决方案的复杂性。
有人说是N,但有人说是N ^ 2。这在我的脑海中暗示了为什么不问相同的问题来使堆栈溢出以更好地理解它。