LintCode - 主元素(普通)

版权声明:本文为博主原创文章,未经博主允许不得转载。

难度:容易
要求:

给定一个整型数组,找出主元素,它在数组中的出现次数严格大于数组元素个数的二分之一。

样例
给出数组[1,1,1,1,2,2,2],返回 1

思路

    /**
     * @param nums: a list of integers
     * @return: find a  majority number
     */
    public int majorityNumber(ArrayList<Integer> nums) {
        // write your code
        int count = 0;
        int num = -1;
        
        for(Integer i : nums){
            if(count == 0){
                num = i;
                count++;
            }else if(num == i){
                count++;
            }else{
                count--;
            }
        }
        return num;
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 题目前的数字是对应的lintcode的题目序号 14.二分查找 给定一个排序的整数数组(升序)和一个要查找的整数t...
    mytac阅读 885评论 1 2
  • 指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 3,651评论 3 44
  • 题目 给定一个整型数组,找到主元素,它在数组中的出现次数严格大于数组元素个数的1/k。注意事项数组中只有唯一的主元...
    六尺帐篷阅读 646评论 0 1
  • 原文发表在我的博客:主元素求关注、求交流、求意见、求建议。 问题 LintCode:主元素 描述 给定一个整型数组...
    華方阅读 1,571评论 3 4
  • 我不知道如何应对,我也不知道发生了什么,只是我真的真的我想去做的。现在不知道了,一切随缘了。 进,要干净利落;退,...
    公子不世阅读 381评论 0 0

友情链接更多精彩内容