LeetCode Single Number II
2014-03-03 16:38
246 查看
题目要求:
Given an array of integers, every element appears three times except for one. Find that single one.
Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?
解题思路:
对于n个整数,统计每位上出现1的次数;若能被3整除,说明要求的数在这一位为0,否则为1,从而得到要求的数。
代码实现:
Given an array of integers, every element appears three times except for one. Find that single one.
Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?
解题思路:
对于n个整数,统计每位上出现1的次数;若能被3整除,说明要求的数在这一位为0,否则为1,从而得到要求的数。
代码实现:
class Solution { public: int singleNumber(int A[], int n) { int bits[sizeof(int)*8] = {0}; int result = 0; for(int i = 0; i < sizeof(int)*8; i++) for(int j = 0; j <n; j++) bits[i] +=((A[j] >> i) & 1); for(int i = 0; i < sizeof(int)*8; i++) if(bits[i] % 3) result += (1 << i); return result; } };
相关文章推荐
- leetcode Single Number II - 位运算处理数组中的数
- LeetCode 【Single Number I II III】
- LeetCode 137 Single Number II
- 【Leetcode】【Medium】Single Number II
- LeetCode-Single Number II[位运算]
- 【Leetcode】Single Number II
- LeetCode | Single Number II
- LeetCode-Single Number II
- LeetCode--Single Number II
- Leetcode Single Number II
- [LeetCode]Single Number II
- LeetCode:Single Number I && II
- Single Number II - LeetCode
- LeetCode——Single Number II
- Leetcode:Single Number II
- LeetCode Single Number II
- leetcode:Single Number II
- 104_leetcode_Single NumberII
- LeetCode(41) Single Number I 和 II
- [LeetCode]题解(python):137-Single Number II