i = ret & (-ret)是为了获得两个数字的二进制位中第一个不相同二进制位出现的位置,之后第二次for循环的时候,分两组,第一组是i的位置为1的,第二个是i的位置为0的。这样分两组再进行异或操作,出现两次的数字全部被抵消,只剩下出现一次的数字。
2

相关推荐

来个offer吧求求求了:校园经历和要找到工作有半毛钱关系?
点赞 评论 收藏
分享
牛客网
牛客企业服务