位运算——LeetCode 136.Single Number
2018-02-14 21:09
417 查看
给定一个整数数组, 每个元素出现两次, 除了某一个元素。找到那个出现一次的元素。
public int singleNumber(int[] nums) { int ans = 0; for (int i : nums) { ans ^= i; } return ans; }这里先讲位运算的特点:1.0 ^ N = N
2.N ^ N = 0
所以每个出现两次元素位运算之后都会变成0,最后只剩0 ^ N,就可以得出结果了,这样时间复杂度是最低的。O(1)。
相关文章推荐
- LeetCode[136] Single Number 位运算异或,HashMap(Java)
- Leetcode-位运算-136. Single Number
- leetcode_136题——Single Number(哈希表hashtable,multiset,位运算)
- Leetcode: Single Number(136,137). 位运算解法分析
- Leetcode-136 Single Number
- leetcode136: Single Number
- 【LeetCode-136】Single Number(C++)
- LeetCode-136. Single Number-Attemped using C
- LeetCode 136 Single Number
- [勇者闯LeetCode] 136. Single Number
- LeetCode136—Single Number
- LeetCode 136 -Single Number ( JAVA )
- Leetcode #136 Single Number
- LeetCode - 136 - Single Number
- LeetCode 136. Single Number
- LeetCode136:Single Number
- Leetcode-136:Single Number
- LeetCode_136-Single Number
- leetcode 136. Single Number
- LeetCode 136. Single Number