3595. 一次或两次 🔒
题目描述
给定一个整数数组 nums
。在这个数组中:
-
有一个元素出现了 恰好 1 次。
-
有一个元素出现了 恰好 2 次。
-
其它所有元素都出现了 恰好 3 次。
返回一个长度为 2 的整数数组,其中第一个元素是只出现 1 次 的那个元素,第二个元素是只出现 2 次 的那个元素。
你的解决方案必须在 O(n) 时间 与 O(1) 空间中运行。
示例 1:
输入:nums = [2,2,3,2,5,5,5,7,7]
输出:[3,7]
解释:
元素 3 出现了 1 次,元素 7 出现了 2 次。其余所有元素都出现了 3 次。
示例 2:
输入:nums = [4,4,6,4,9,9,9,6,8]
输出:[8,6]
解释:
元素 8 出现了 1 次,元素 6 出现了 2 次。其余所有元素都出现了 3 次。
提示:
3 <= nums.length <= 105
-231 <= nums[i] <= 231 - 1
nums.length
是 3 的倍数。- 恰好有一个元素出现 1 次,一个元素出现 2 次,其余所有元素都出现了 3 次。
解法
方法一
1 |
|
1 |
|
1 |
|
1 |
|