本题开始的解题思路为:利用数组中元素的和进行计算,和大于等于下一个元素则:和-下一个元素;和小于下一个元素则:和+下一个元素。提交运行后发现该解法不符合有负数的测试用例,因此选择用异或。异或运算法则:相同为0;与0异或等于原数;满***换
import java.util.*; public class Solution { /** * * @param A int整型一维数组 * @return int整型 */ public int singleNumber (int[] A) { // write code here int sum=A[0]; for(int i=1;i<A.length;i++){ sum^=A[i]; } return sum; } }