[LeetCode][C++] #137. Single Number II

Newone Tsai
May 3, 2021

--

[Medium][Question]:

Given an integer array nums where every element appears three times except for one, which appears exactly once. Find the single element and return it.

Example 1:

Input: nums = [2,2,3,2]
Output: 3

Example 2:

Input: nums = [0,1,0,1,0,1,99]
Output: 99

Constraints:

  • 1 <= nums.length <= 3 * 104
  • -231 <= nums[i] <= 231 - 1
  • Each element in nums appears exactly three times except for one element which appears once.

Follow up: Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

My Solution[C++]:

[Ideas]: 用Bit-wise Operation,紀錄每個位元出現過的次數,再個別除3取餘數。

--

--

Newone Tsai
Newone Tsai

Written by Newone Tsai

I took the one less traveled by, and that has made all the difference.

No responses yet