[LeetCode] Single Number II
2014-07-03 16:31
316 查看
int singleNumber(int A[], int n) { int* cnt = new int[8*sizeof(int)]; for (int i = 0; i < 8*sizeof(int); i++) { cnt[i] = 0; } for (int i = 0; i < n; i++) { for (int j = 0; j < 8*sizeof(int); j++) { int bitIsOne = (A[i]>>j)&1; cnt[j] += bitIsOne; } } int num = 0; for (int i = 0; i < 8*sizeof(int); i++) { num += (cnt[i]%3)<<i; } return num; }
分别计算所有数字每一位之和,对3取余后就对应着single number的每一位
相关文章推荐
- LeetCode Single Number I & II 都符合两个问题额外要求的 通用解法 与 思考过程
- 【leetcode】single-number-ii
- Leetcode -- Single Number II
- 【leetcode78】Single Number II
- [LeetCode][JavaScript]Single Number II
- 70 leetcode - Single Number I,II,III
- [Leetcode]Single Number II
- [leetcode]Single Number II
- leetcode 刷题之路 84 Single Number II
- 【LeetCode】Single Number II
- leetcode[137]:Single Number II
- leetcode-Single Number II
- LeetCode之Single Number II
- [Leetcode] single number ii 找单个数
- Leetcode习题: SingleNumber II
- [leetcode] Single Number II
- LeetCode Single Number II
- leetcode -- Single Number II &III- 位操作,没有理解
- LeetCode137:Single Number II
- LeetCode:Single Number II