| 12345678910111213141516171819 | 
							- func singleNumber(nums []int) []int {
 
- 	n, a, b := len(nums), 0, 0
 
- 	for i := 0; i < n; i++ {
 
- 		a ^= nums[i]
 
- 	}
 
- 	mask := 1
 
- 	for mask & a == 0 {
 
- 		mask <<= 1
 
- 	}
 
- 	a = 0
 
- 	for i := 0; i < n; i++ {
 
- 		if nums[i] & mask == 0 { // Use the mask to split all nums into 2 groups
 
- 			a ^= nums[i]
 
- 		} else {
 
- 			b ^= nums[i]
 
- 		}
 
- 	}
 
- 	return []int{a, b}
 
- }
 
 
  |