多数元素II
中等阿里巴巴数组
题目描述
给定一个大小为 n 的整数数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素。尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。最多只能有两个元素出现超过 n/3 次,可以扩展 Boyer-Moore 投票算法,维护两个候选者及其计数。
示例
输入:
nums = [3, 2, 3]输出:
[3]solution.ts
输出结果
点击「运行代码」按钮查看结果...
给定一个大小为 n 的整数数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素。尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。最多只能有两个元素出现超过 n/3 次,可以扩展 Boyer-Moore 投票算法,维护两个候选者及其计数。
nums = [3, 2, 3][3]