我怀疑如果你可以比迭代子列表更快地定位重复值范围的另一端,那么就有可能实现保存。
我怀疑如果你可以比迭代子列表更快地定位重复值范围的另一端,那么就有可能实现保存。
一般而言是没有最好的时间复杂度,因为你总可以构造一个O(n)(没有重复元素的列表)的情况。然而,如果你对数据做出某些假设(例如最多有log n个不同的元素),你可能会得到更好的结果(对于这个特定的情况,我不确定)。
当然,这当然假设你有一种有效的“批量删除”的方法,意味着你可以以O(1)的时间删除任何相等元素的范围,而不管它的大小。
不可能有
至于将所有元素与其他元素进行比较,我们需要进行n*(n-1)=n2-n次比较...`