public class Solution {
/**
* @param A : An integer array
* @return : An integer
*/
public int singleNumberII(int[] A) {
// 2015-09-17 O(n)
if (A == null || A.length == 0) {
return 0;
}
HashMap<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < A.length; i++) {
if (!map.containsKey(A[i])) {
map.put(A[i], 1);
} else if (map.get(A[i]) == 2) {
map.remove(A[i]);
} else {
map.put(A[i], map.get(A[i]) + 1);
}
}
Set<Integer> keyset = map.keySet();
for (Integer rst : keyset) {
return rst;
}
return 0;
}
}
[刷题]Single Number III
最新推荐文章于 2019-08-06 15:08:25 发布
本文详细介绍了如何通过哈希表实现O(n)复杂度解决LintCode上的SingleNumberIII问题,即在一个整数数组中找到只出现一次的数。文章包括了算法思路、代码实现及复杂度分析。
1244

被折叠的 条评论
为什么被折叠?



