给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋
的元素。
你可以假设数组是非空的,并且给定的数组总是存在多数元素。
示例 1:
示例 2:
1 2
| 输入: [2,2,1,1,1,2,2] 输出: 2
|
个人解答
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
var majorityElement = function(nums) { var hash = {}; var majority = 0; for (var i = 0; i < nums.length; i++) { if (nums[i] in hash) { hash[nums[i]] += 1; } else { hash[nums[i]] = 1; } if (hash[nums[i]] > nums.length / 2) { majority = nums[i]; break; } }
return majority; };
|
执行结果
执行用时: 76 ms, 在所有 JavaScript 提交中击败了 68.30%的用户;
内存消耗: 37.6 MB, 在所有 JavaScript 提交中击败了 67.22%的用户。