当前位置: 首页 > news >正文

2025年- G18-Lc92-169. 多数元素-java版

1.题目描述
请添加图片描述
2.思路
补充1:
在这里插入图片描述
思路1:
(1)我打算用hashmap的getOrDefault()取键的值。
(2)m.keySet() 是一个方法,用于获取 HashMap 中所有的键(key)。(3)keySet() 返回的是一个包含所有键的 集合(Set),你可以通过这个集合来遍历所有的键。
在这里插入图片描述

在这里插入图片描述

3.代码实现

class Solution {
    public int majorityElement(int[] nums) {
        HashMap<Integer,Integer> m =new HashMap();
         // 1. 统计每个元素出现的频率
        for(int c:nums)
        {
            m.put(c,m.getOrDefault(c,0)+1);
        }
        // //通过m.values(),我们可以获取到所有字符的出现次数。
        // for(int cnt:m.values())
        // {
        //     if()
        // }

        int n=nums.length;

        // 2. 找到出现次数最多的元素,且它的出现次数大于 n / 2
        for(int cnt:m.keySet())
        {
            if(m.get(cnt)>n/2)
            {
               return cnt;
            }
        }
        // 3.如果没有众数,返回 -1(这通常不会发生,因为题目保证有众数)
        return -1;

    }
}

相关文章:

  • SQLmap 使用指南:开启安全测试高效之旅
  • React 高阶组件(HOC)
  • 【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(六) -> CSS动画
  • 【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter24-网络请求与远程资源
  • Spring Framework测试工具MockMvc介绍
  • 小程序类目调整汇总公告
  • Springer独立出版 EI检索 | 2025年第三届绿色建筑国际会议(ICoGB 2025)
  • 【SRC实战】修改金币数量实现财富自由
  • ARM Coretex-M核心单片机(STM32)找到hardfault的原因,与hardfault解决方法
  • rk3588增加独立分区
  • 【自学笔记】Vue基础知识点总览-持续更新
  • 智能运维语义标注体系技术框架与工程化实践
  • 【嵌入式原理设计】实验六:倒车控制设计
  • 深入Linux序列:进程的终止与等待
  • Python Cookbook-2.13 使用C++的类iostream语法
  • SSD网络预测与训练阶段总结
  • mysql多表查询
  • 【嵌入式Linux应用开发基础】网络编程(4):UDP协议
  • 数字可调控开关电源设计(论文+源码)
  • Windows 图形显示驱动开发-WDDM 3.2-自动显示切换(七)
  • 伤员回归新援融入,海港逆转海牛重回争冠集团
  • 中俄就应对美加征所谓“对等关税”等问题进行深入交流
  • 国家主席习近平同普京总统签署关于进一步深化中俄新时代全面战略协作伙伴关系的联合声明
  • 美政府被曝下令加强对格陵兰岛间谍活动,丹麦将召见美代办
  • 西安碑林博物馆票价将调至85元,工作人员:10元属于改扩建期间惠民票
  • 上海一中院一审公开开庭审理被告人胡欣受贿案