剑指 Offer II 004. 只出现一次的数字
给你一个整数数组 nums ,除某个元素仅出现 一次外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。
利用HashMap的键值对,键存储数值,值存储出现的次数,然后依次将其转换为Map.Entry(Integer,Integer) map:map.entrySet()
之后可以遍历key、value,然后将value为1的key输出
class Solution {
public int singleNumber(int[] nums) {
Map<Integer,Integer> map=new HashMap<>();
for(int i=0;i<nums.length;i++){
if(map.containsKey(nums[i])){
map.put(nums[i],map.get(nums[i])+1);
}else{
map.put(nums[i],1);
}
}
int one=-1;
for(Map.Entry<Integer,Integer>entry:map.entrySet()){
int key=entry.getKey(),value=entry.getValue();
if(value==1){
one=key;
break;
}
}
return one;
}
}