Majority Element
Given an array nums of size n, return the majority element.
The majority element is the element that appears more than ⌊n / 2⌋ times. You may assume that the majority element always exists in nums.
Your solution should run in O(n) time and use O(1) extra space if possible.
Example 1
Input
nums = [3,2,3]Output
3The value 3 appears twice in an array of length 3, which is more than ⌊3 / 2⌋.
Example 2
Input
nums = [2,2,1,1,1,2,2]Output
2The value 2 appears four times in an array of length 7, which is more than ⌊7 / 2⌋.
Constraints
- 1 <= nums.length <= 5 * 10^4
- -10^9 <= nums[i] <= 10^9
- The majority element always exists in the array.