[LeetCode][C++] #136. Single Number

Newone Tsai
May 3, 2021

[Easy][Question]:

Given a non-empty array of integers nums, every element appears twice except for one. Find that single one.

Follow up: Could you implement a solution with a linear runtime complexity and without using extra memory?

Example 1:

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

Example 2:

Input: nums = [4,1,2,1,2]
Output: 4

Example 3:

Input: nums = [1]
Output: 1

Constraints:

  • 1 <= nums.length <= 3 * 104
  • -3 * 104 <= nums[i] <= 3 * 104
  • Each element in the array appears twice except for one element which appears only once.

My Solution[C++]:

[Ideas]: 用Bit-wise Operation,因為x ^ x 會得到 0。所以把所有數字or過一遍就是答案(答案僅出現過一次)。

--

--

Newone Tsai

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