4. 多数元素
题目难度:简单
题目类型:排序
题目描述:
解题思路
先排序,然后遍历数组中元素,因为数组中的这个多数元素超过一半,那么只需比较与该元素在数组超过一半加一的位置的数,若相等则为该元素,返回该元素。
时间复杂度:O(n)
空间复杂度:O(1)
源代码
class Solution {
public int majorityElement(int[] nums) {
int len = nums.length;
Arrays.sort(nums);
if(nums[0] == nums[len / 2])
return nums[0];
for(int i = 1; i < len / 2; i++)
{
if(nums[i] == nums[len/2 + 1])
return nums[i];
}
return nums[len - 1];
}
}