出现一次的数字

出现一次的数字

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

题目描述

题目描述

思路

本题采用异或运算。可以把数组分成两部分:一部分是出现两次的数字;另一部分是出现一次的数字。

这样,出现两次的数字的异或运算结果是0. 再和出现一次的数字进行异或运算,得到的就是出现一次的数字,就是我们想要的结果。

代码

int singleNumber(int* A, int n) {
        // write code here
        int ret = 0;
        for(int i = 0; i < n; i++) {
            ret ^= A[i];
        }
        return ret;
}
全部评论

相关推荐

10-28 10:48
已编辑
门头沟学院 Java
孩子我想要offer:发笔试后还没笔试把我挂了,然后邮箱一直让我测评没测,后面不知道干嘛又给我捞起来下轮笔试,做完测评笔试又挂了😅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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