LeetCode-Single Number II
2014-09-05 10:57
211 查看
题目:https://oj.leetcode.com/problems/single-number-ii/
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?
分析:创建一个长度为sizeof(int) 的数组count[sizeof(int)],count[i] 表示在在i 位出现的1 的次数。如果count[i] 是3 的整数倍,则忽略;否则就把该位取出来组成答案。
源码:Java版本
算法分析:时间复杂度O(n),空间复杂度O(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?
分析:创建一个长度为sizeof(int) 的数组count[sizeof(int)],count[i] 表示在在i 位出现的1 的次数。如果count[i] 是3 的整数倍,则忽略;否则就把该位取出来组成答案。
源码:Java版本
算法分析:时间复杂度O(n),空间复杂度O(1)
public class Solution { public int singleNumber(int[] A) { int[] count=new int[Integer.SIZE]; int result=0; for(int i=0;i<A.length;i++) { for(int j=0;j<Integer.SIZE;j++) { if(((1<<j)&A[i])!=0) { count[j]++; count[j]%=3; } } } for(int i=0;i<Integer.SIZE;i++) { result+=count[i]<<i; } return result; } }
相关文章推荐
- LeetCode - Refresh - Single Number II
- leetcode137 Single Number II java
- LeetCode(137) Single Number II
- LeetCode---(137)Single Number II
- [leetcode]Single Number II 详解
- [LeetCode] Single Number II
- Single Number II leetcode java
- LeetCode Single Number II
- [LeetCode]Single Number, Single Number II & Single Number III
- LeetCode:Single Number II
- 【leetcode78】Single Number II
- LeetCode | Single Number II
- Java [Leetcode 137]Single Number II
- [leetcode-137]Single Number II (c)
- 【Leetcode】 - Single Number II
- 【LeetCode-面试算法经典-Java实现】【137-Single Number II(只字出一次的数字II)】
- LeetCode Single Number II
- 《leetCode》:Single Number II
- LeetCode_Single Number II
- LeetCode--Single Number II