Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋
times.
You may assume that the array is non-empty and the majority element always exist in the array.
Example 1:
Input: [3,2,3]
Output: 3
Example 2:
Input: [2,2,1,1,1,2,2]
Output: 2
Runtime: 64 ms, faster than 80.53% of JavaScript online submissions for Majority Element.
/**
* @param {number[]} nums
* @return {number}
*/
var majorityElement = function(nums) {
if (nums.length === 1) {
return nums[0];
}
const hash = {};
const half = nums.length / 2;
let item;
for (let i = 0; i < nums.length; i++) {
item = nums[i];
if (!hash[item]) {
hash[item] = 1;
} else {
hash[item]++;
if (hash[item] >= half) {
return item;
}
}
}
};