LeetCode之Single Number II
2013-12-26 21:54
399 查看
http://oj.leetcode.com/problems/single-number-ii/
找出非重复数字,注意 Every element appears three times
except for one。
需要注意的特殊情况是 n == 1的情况,此情况下不能进行A[i], A[i+1],A[i+2]的比较
找出非重复数字,注意 Every element appears three times
except for one。
需要注意的特殊情况是 n == 1的情况,此情况下不能进行A[i], A[i+1],A[i+2]的比较
class Solution { public: int singleNumber(int A[], int n) { sort(A,A+n); for(int i = 0; i < n;) { if(i+1 >= n) return A[i]; if(A[i] != A[i+1] || A[i] != A[i+2]) { return chooseDiff(A[i], A[i+1],A[i+2]); } i += 3; } } int chooseDiff(int a, int b, int c) { if(a==b) return c; if(b==c) return a; if(a==c) return b; } };
相关文章推荐
- 【leetcode78】Single Number II
- [LeetCode刷题记录]Single Number II
- 【Leetcode】 - Single Number II
- Java [Leetcode 137]Single Number II
- [LeetCode]Single Number II
- [Leetcode]LeetCode Single Number II 位运算法解析理解
- [LeetCode] - Single Number II
- [LeetCode]Single Number II
- leetCode: Single Number II [137]
- leetcode Single Number II
- 《leetCode》:Single Number II
- Leetcode习题: SingleNumber II
- LeetCode | Single Number II
- Java for LeetCode 137 Single Number II
- [LeetCode]Single Number II
- Leetcode-SingleNumberII
- LeetCode 137 Single Number II
- LeetCode - Single Number II
- leetcode Single Number II
- LeetCode Single Number I & II 都符合两个问题额外要求的 通用解法 与 思考过程