public int[] singleNumbers(int[] nums) { int x = 0, y = 0, n = 0, m = 1; // 遍历异或 for(int num : nums) { n ^= num; } // 循环左移,计算 m while((n & m) == 0) { m <<= 1; } // 遍历 nums 分组 for(int num: nums) { if((num & m) != 0) { x ^= num; } else { y ^= num; } } return new int[] {x, y}; }
剑指Offer-58数组中数字出现的次数
猜你喜欢
转载自blog.csdn.net/a792396951/article/details/114284985
今日推荐
周排行