【leetcode】求众数

                                                    求众数

一、题目描述

给定一个大小为 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。

你可以假设数组是非空的,并且给定的数组总是存在众数。

示例 1:

输入: [3,2,3]
输出: 3

示例 2:

输入: [2,2,1,1,1,2,2]
输出: 2

二、思路

先假设第一个元素为众数,计数器置为1,遍历数组,当遇到相同的元素时,计数器加1,否则减1,任何计算器为0的时候,就假设下一个元素为众数,计数器再置为1。循环结束时,返回我们假设的众数,即要求的众数。


三、代码演示

 public int majorityElement(int[] nums) {
        int result = nums[0];
        int times = 1;
        for (int i = 1; i < nums.length; i++) {
            if (result == nums[i]) {
                times++;
            } else {
                times--;
                if (times == 0) {
                    result = nums[++i];
                    times++;
                }
            }
        }
        return result;
    }

 

全部评论

相关推荐

点赞 收藏 评论
分享
正在热议
# 牛客帮帮团来啦!有问必答 #
1150148次浏览 17147人参与
# 通信和硬件还有转码的必要吗 #
11160次浏览 101人参与
# 不去互联网可以去金融科技 #
20186次浏览 255人参与
# 和牛牛一起刷题打卡 #
18735次浏览 1634人参与
# 实习与准备秋招该如何平衡 #
203250次浏览 3625人参与
# 大厂无回复,继续等待还是奔赴小厂 #
4919次浏览 30人参与
# OPPO开奖 #
19146次浏览 267人参与
# 通信硬件薪资爆料 #
265786次浏览 2484人参与
# 国企是理工四大天坑的最好选择吗 #
2196次浏览 34人参与
# 互联网公司评价 #
97606次浏览 1279人参与
# 简历无回复,你会继续海投还是优化再投? #
25021次浏览 354人参与
# 0offer是寒冬太冷还是我太菜 #
454707次浏览 5123人参与
# 国企和大厂硬件兄弟怎么选? #
53874次浏览 1012人参与
# 参加过提前批的机械人,你们还参加秋招么 #
14628次浏览 349人参与
# 硬件人的简历怎么写 #
82279次浏览 852人参与
# 面试被问第一学历差时该怎么回答 #
19375次浏览 213人参与
# 你见过最离谱的招聘要求是什么? #
27911次浏览 247人参与
# 学历对求职的影响 #
161173次浏览 1804人参与
# 你收到了团子的OC了吗 #
538563次浏览 6386人参与
# 你已经投递多少份简历了 #
344035次浏览 4963人参与
# 实习生应该准时下班吗 #
96929次浏览 722人参与
# 听劝,我这个简历该怎么改? #
63507次浏览 622人参与
牛客网
牛客企业服务