[LeetCode 153] Majority Element

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.

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;
    }


你可能感兴趣的:(LeetCode)