Given an array of size n, find the majority element. The majority element is the element that appears more than ?
times.
n/2 ?
You may assume that the array is non-empty and the majority element always exist in the array.
solution:
to keep to variable, one for appear times, another for element value.
public int majorityElement(int[] nums) { int most = nums[0]; int counter = 1; for(int i=1;i<nums.length;i++){ if(most == nums[i]){ counter++; }else{ if(counter == 0){ most = nums[i]; counter++; }else{ counter--; } } } return most; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-11-25 10:13:21