题目:169. 多数元素
思路:哈希表来记录出现的次数。
C++版本:
class Solution {
public:
int majorityElement(vector<int>& nums) {
int n=nums.size();
unordered_map<int,int> mp;
int res=0;
for(auto x:nums){
mp[x]++;
if(mp[x]>n/2) res=x;
}
return res;
}
};
JAVA 版本:
class Solution {
public int majorityElement(int[] nums) {
Map<Integer,Integer> mp=new HashMap<Integer,Integer>();
int res=0;
for(var x:nums){
mp.put(x,mp.getOrDefault(x,0)+1);
if(mp.get(x)>nums.length/2) res=x;
}
return res;
}
}