含蓄哈密瓜

文章
6
资源
0
加入时间
2年10月21天

【剑指Offer】数组中只出现一次的两个数字(其余数都出现两次)(普通排序 / 满足交换律的异或)题目描述解法

目录题目描述解法排序然后左右比较满足交换律的异或题目描述一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。解法排序然后左右比较先将数组升序排序。从第一个数开始,比较相邻两个数字xi,xi+1:如果相同,则往后移两位,继续比较;如果不同,则判断xi和前面数字是否也不同,xi+1和后面数字是否也不同,这样判断它数值的唯一性。需要注意最后一个数字没参与比较,所以如果结果还差一个数,那就是差的最后这个数字。时间复杂度O(NlogN):N是数组大小,因为