如果对序列进行排序,那么相同的数会在序列中聚到一起,最坏情况下出现次数超过一半的数会聚到序列的两边,但因为出现次数超过一半,所以这个数会穿过序列的正中间。所以对于长度为nnn的序列AAA,出现次数超过一半的数一定是An2A_\frac{n}{2}A2n。 时间复杂度为O(nlogn)O(n\log n)O(nlogn)。
注册一个 unDefinedOJ 通用账户,您就可以在我们提供的所有在线评测服务上提交代码、参与讨论。
使用您的 unDefinedOJ 通用账户