看下面题解都太复杂了,写个简单的C++

数组中只出现一次的数字

https://www.nowcoder.com/questionTerminal/e02fdb54d7524710a7d664d082bb7811?answerType=1&f=discussion

class Solution {
public:
    void FindNumsAppearOnce(vector<int> data,int* num1,int *num2) {
        int ans = 0;
        for(int d: data)
            ans ^= d;
        *num1 = ans; *num2 = ans;
        int tmp = ans &(~ans+1);    //取最右边1
        for(int d: data){
            if(tmp&d)
                *num1 ^= d;
            else
                *num2 ^= d;
        }
    }
};
全部评论

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

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