给定: A = [3, 2, 7, 5, 5, 7] 返回: [2, 3]
参考代码:
class Solution: def theTwoNumbers(self, a): ans = [0, 0] for i in a: ans[0] = ans[0] ^ i c = 1 while c & ans[0] != c: c = c << 1 for i in a: if i & c == c: ans[1] = ans[1] ^ i ans[0] = ans[0] ^ ans[1] return ans
A=[3, 2, 7, 5, 5, 7] B=[] num=0 for x in range(len(A)): num=0 for y in range(len(A)): if A[x] == A [y]: num=num+1 print(num) if num <2: B.append(A[x]) print(B)
go
package main import ( "fmt" ) func main() { /* 问题描述: 给定一个数组 A,其中除了 2 个数,其他均出现 2 次,请找到不重复的 2 个数并返回。 问题示例: 给定: A = [1, 2, 5, 5, 6, 6] 返回: [1, 2] 给定: A = [3, 2, 7, 5, 5, 7] 返回: [2, 3] */ var ( num = 0 a = []int{3, 2, 7, 5, 5, 7} b []int ) for i := 0; i < len(a); i++ { num = 0 for ii := 0; ii < len(a); ii++ { if a[i] == a[ii] { num++ } if num >= 2 { continue } } if num < 2 { b = append([]int{a[i]}, b...) } } fmt.Println(b) }