【Leetcode-Easy-169】 Majority Element

【Leetcode-Easy-169】 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.

Credits:
Special thanks to @ts for adding this problem and creating all test cases.

思路

充分使用數據的特徵

程序

class Solution {
    public int majorityElement(int[] nums) {
        int counter = 0;
        int curr = nums[0];
        for (int i = 0; i < nums.length; i ++){
            if (counter == 0) curr = nums[i];

            if (nums[i] == curr) counter ++;
            else{
                counter --;
                if (counter <= 0) counter = 0;
            }
        }
        return curr;
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章