single-number

single-number

http://www.nowcoder.com/questionTerminal/0bc646909e474ac5b031ec6836a47768

本题开始的解题思路为:利用数组中元素的和进行计算,和大于等于下一个元素则:和-下一个元素;和小于下一个元素则:和+下一个元素。提交运行后发现该解法不符合有负数的测试用例,因此选择用异或。异或运算法则:相同为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;
    }
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务