169. 多数元素

169. 多数元素

原题

java 复制代码
class Solution {
    public int majorityElement(int[] nums) {
        if(nums.length==1){
            return nums[0];
        }
        //数组排序
        Arrays.sort(nums);
        //统计出现最多的次数
        int count = 0;
        //保存结果
        int res = nums[0];
        //指向当前元素
        int i =0;
        //指向当前元素的下一个元素
        int j=i+1;
        while(j<nums.length){
            //如果不相等,则计算出现次数
            if(nums[i]!=nums[j]){
                if(count<j-i){
                    count = j-i;
                    res =nums[i];
                    i=j;
                    j++;
                }
            }
            j++;
        }
        //到这,判断最后一组数是否相等(因为在while循环里不能保证最后一个元素相等的判断)
        //若最后一个元素和nums[i]相等,并且出现次数大于count
        if(count<j-i&&nums[i]==nums[j-1]){
            res =nums[i];
        }
        return res;
    }
}
相关推荐
hahaha60163 小时前
完美反射法--白平衡算法
人工智能·算法
随意起个昵称3 小时前
【分组背包】洛谷刷题合集
算法·动态规划
elseif1233 小时前
【2026 CSP-J】【逐题精讲】超详细(15道选择,3道阅读,2道完善)
java·开发语言·c++·算法·csp
月光船幽幽3 小时前
拓扑实验三组协同验证方案
python·算法
7yewh4 小时前
SLAM 从视觉里程计到建图(6)
数据结构·人工智能·机器人·自动驾驶·嵌入式
程序员清风4 小时前
pandas 核心数据结构:Series 与 DataFrame
数据结构·pandas
殷色玫瑰4 小时前
C语言编译和链接:从 .c到 .exe,程序到底经历了什么?
linux·c语言·c++·算法
keep intensify4 小时前
C++20线程池
c++·算法·c++20
奋发向前wcx4 小时前
CSP-J复赛模拟赛2 王晨旭补题 2026.10.3
算法
All for pursuit.5 小时前
【回溯-5】78.子集
数据结构·c++·算法·leetcode