首页 > 其他 > 详细

260. 只出现一次的数字 III

时间:2020-04-13 00:36:15      阅读:75      评论:0      收藏:0      [点我收藏+]
 1 class Solution 
 2 {
 3 public:
 4     vector<int> singleNumber(vector<int>& nums) 
 5     {
 6         int diff = 0;
 7         vector<int> res(2,0);
 8         for (int num : nums) diff ^= num;
 9         
10         diff &= -diff;//-diff先取补码,再加一,此句找出最右侧的1,根据这个1就可以进行分组
11         
12         for (int num : nums)
13         {
14             if ((num & diff) == 0) res[0] ^= num;
15             else res[1] ^= num;
16         }
17         return res;
18     }
19 };

 

260. 只出现一次的数字 III

原文:https://www.cnblogs.com/yuhong1103/p/12688504.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!