0169. Majority Element

169. Majority Element #

题目 #

给定一个大小为 n 的数组 nums,返回其中的多数元素。多数元素是指在数组中出现次数 大于 n/2 的元素。

假定数组非空,且给定的数组总是存在多数元素。

思路 #

  • 摩尔投票法

代码 #

class Solution {
    public int majorityElement(int[] nums) {
        int major = -1, count = 0;
        for (int num: nums) {
            if (count == 0) { major = num; count = 1; }
            else if (major == num) { count += 1; }
            else count -= 1;
        }
        return major;
    }
}

致谢 #

田野吹吹风