关注
答案解释里说的模棱两可的,首先应该是 ret&(-ret),该运算的目的时为了找到两个数字的二进制位中第一个不相同二进制位,然后根据这个位置进行分组, ret&(-ret)也可以理解为 mask=1,while(ret&mask==0)mask<<=1。然后根据这个位置,在第二次进行for循环的时候,将原数组所有的元素根据i位置的不同进行分组并进行异或运算,由于其他的数字出现两次所以异或的二进制位结果会抵消掉,即n^n=0,所以最后的结果为我们要求的其中一个数num1^0=num1 [这里的0即为其他进入该分组且重复2次的数字异或的最后结果n^n^m^m....=0,并且无视元素顺序,结果都一样,可通过写demo证实],所以通过if-else进行分两组后求出我们需要的答案。
8
相关推荐
点赞 评论 收藏
分享
01-16 11:50
浙江工商大学 Java 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 今年春招是金一银二嘛? #
11597次浏览 143人参与
# AI求职实录 #
5910次浏览 167人参与
# 赚钱的意义在这一刻具象化 #
5611次浏览 138人参与
# 抛开难度不谈,你最想去哪家公司? #
6345次浏览 137人参与
# 没关系,至少我的__很曼妙 #
4877次浏览 96人参与
# 为什么有人零实习也能进大厂? #
6908次浏览 150人参与
# AI时代的工作 VS 传统时代的工作,有哪些不同? #
9914次浏览 230人参与
# 1月小结:你过的开心吗? #
2381次浏览 55人参与
# 你的第一家实习公司是什么档次? #
5483次浏览 82人参与
# 当你问AI“你会取代我的工作吗”,它说_? #
4763次浏览 159人参与
# 你的landing期是如何度过的? #
10256次浏览 197人参与
# 除了Java,最推荐学什么技术? #
7660次浏览 173人参与
# 牛客吐槽大会 #
4455次浏览 92人参与
# 机械人你知道哪些单休企业 #
83288次浏览 415人参与
# 你觉得什么岗位会被AI替代 #
37124次浏览 256人参与
# 秋招结束之后的日子 #
117182次浏览 1062人参与
# 通信/硬件求职避坑tips #
137989次浏览 1084人参与
# 机械人春招想让哪家公司来捞你? #
379527次浏览 3141人参与
# 你在职场上见过哪些“水货”同事 #
30904次浏览 168人参与
# 哪些瞬间让你真切感受到了工作的乐趣 #
23331次浏览 101人参与
