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;
    }
}
相关推荐
会编程的土豆1 分钟前
【数据结构与算法】新二叉树
数据结构·算法·二叉树
jerryinwuhan8 分钟前
基于结构可控性的给水管网传感器布点选择算法
数据库·算法
南宫萧幕8 分钟前
车辆控制基础:从 EKF 状态估计到非线性 MPC 轨迹跟踪的闭环实现
算法·matlab·汽车·控制·pid
点PY9 分钟前
《高质量的实时直接体绘制算法》论文精读
算法
X journey11 分钟前
机器学习进阶(24):主成分分析PCA
人工智能·算法·机器学习
MediaTea18 分钟前
AI 术语通俗词典:精确率(分类)
人工智能·算法·机器学习·分类·数据挖掘
Morwit20 分钟前
【力扣hot100】 416. 分割等和子集
数据结构·c++·算法·leetcode·职场和发展
ECT-OS-JiuHuaShan26 分钟前
朱梁整体论,万有代谢元,矛盾因果网,人间正道是沧桑
人工智能·科技·算法·机器学习·拓扑学
qeen8728 分钟前
【算法笔记】二分查找与二分答案
c语言·c++·笔记·学习·算法·二分
C雨后彩虹30 分钟前
投篮大赛问题
java·数据结构·算法·华为·面试