169. Majority Element

一、题目

  1、审题

  

  2、分析

    给出一个整形数组,其中一个元素出现的次数 大于 n / 2 次。输出此元素。

 

二、解答

  1、思路:

    采用一个变量  count 进行计数。遍历结束时 count 大于 0 或遍历时出现 count > N / 2 ,则返回对应的元素

    public int majorityElement(int[] nums) {
     
        int major = nums[0];
        int count = 1;
        for (int i = 1; i < nums.length && count <=  nums.length/2; i++) {
            if(count == 0) {
                count++;
                major = nums[i];
            }
            else if(nums[i] == major)
                count++;
            else 
                count--;
        }
        return major;
    }

 

posted @ 2018-10-16 14:41  skillking2  阅读(101)  评论(0编辑  收藏  举报