用map即可,记录数有没有出现过
题目若是改成数组中只有1个元素出现了1次,其他元素都出现了两次,则只要对所有的数异或即可,最后异或的结果即为那个数
题目若是改成数组中有两个不同的元素出现了1次,其他元素都出现了两次,则最后异或的结果非0,找到这个结果中用二进制表示的从最高位开始,第一个1,则这两个不同的数,这个1所对应的位一个是1,一个是0,就把数组分成两部分,这个位为1的数 是一部分,这个位为0的数 是一部分 然后分别在这两个部分里找就行了
用map即可,记录数有没有出现过
题目若是改成数组中只有1个元素出现了1次,其他元素都出现了两次,则只要对所有的数异或即可,最后异或的结果即为那个数
题目若是改成数组中有两个不同的元素出现了1次,其他元素都出现了两次,则最后异或的结果非0,找到这个结果中用二进制表示的从最高位开始,第一个1,则这两个不同的数,这个1所对应的位一个是1,一个是0,就把数组分成两部分,这个位为1的数 是一部分,这个位为0的数 是一部分 然后分别在这两个部分里找就行了