Description:
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
题意:给定一个一维数组,数组的元素个数为n,要求找出数组中出现的次数超过⌊ n/2 ⌋的数字;假设这个数字总是存在的;
解法:题目要求这个最多数的个数需要超过⌊ n/2 ⌋,所以当我们对数组进行排序后,位于数组n/2位置上的数就是我们要找的数;
class Solution {
public int majorityElement(int[] nums) {
Arrays.sort(nums);
return nums[nums.length/2];
}
}