LeetCode(剑指 Offer)- 56 - I. 数组中数字出现的次数
Posted 放羊的牧码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode(剑指 Offer)- 56 - I. 数组中数字出现的次数相关的知识,希望对你有一定的参考价值。
题目链接:点击打开链接
题目大意:略
解题思路
相关企业
AC 代码
- Java
class Solution
public int[] singleNumbers(int[] nums)
int x = 0, y = 0, n = 0, m = 1;
for(int num : nums) // 1. 遍历异或
n ^= num;
while((n & m) == 0) // 2. 循环左移,计算 m
m <<= 1;
for(int num: nums) // 3. 遍历 nums 分组
if((num & m) != 0) x ^= num; // 4. 当 num & m != 0
else y ^= num; // 4. 当 num & m == 0
return new int[] x, y; // 5. 返回出现一次的数字
- C++
class Solution
public:
vector<int> singleNumbers(vector<int>& nums)
int x = 0, y = 0, n = 0, m = 1;
for(int num : nums) // 1. 遍历异或
n ^= num;
while((n & m) == 0) // 2. 循环左移,计算 m
m <<= 1;
for(int num : nums) // 3. 遍历 nums 分组
if(num & m) x ^= num; // 4. 当 num & m != 0
else y ^= num; // 4. 当 num & m == 0
return vector<int> x, y; // 5. 返回出现一次的数字
;
以上是关于LeetCode(剑指 Offer)- 56 - I. 数组中数字出现的次数的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode(剑指 Offer)- 56 - I. 数组中数字出现的次数
LeetCode(剑指 Offer)- 56 - I. 数组中数字出现的次数
LeetCode(剑指 Offer)- 56 - II. 数组中数字出现的次数 II
LeetCode(剑指 Offer)- 56 - II. 数组中数字出现的次数 II