LeetCode 2404. 出现最频繁的偶数元素

news2024/9/21 10:49:05

原题链接:2404. 出现最频繁的偶数元素

给你一个整数数组 nums ,返回出现最频繁的偶数元素。

如果存在多个满足条件的元素,只需要返回 最小 的一个。如果不存在这样的元素,返回 -1 。

示例 1:

输入:nums = [0,1,2,2,4,4,1]
输出:2
解释:
数组中的偶数元素为 0、2 和 4 ,在这些元素中,2 和 4 出现次数最多。
返回最小的那个,即返回 2 。

示例 2:

输入:nums = [4,4,4,9,2,4]
输出:4
解释:4 是出现最频繁的偶数元素。

示例 3:

输入:nums = [29,47,21,41,13,37,25,7]
输出:-1
解释:不存在偶数元素。


这题的思路很清晰,哈希表记录偶数元素出现的次数,然后遍历哈希表,对比出现最多次数的元素,出现次数相同就找最小的


class Solution {
public:
    int mostFrequentEven(vector<int>& nums) {
        unordered_map<int, int> counts; // 哈希表
        for(auto num : nums){ // 遍历数组,把偶数存入哈希表,并记录出现次数
            if(num % 2 == 0){ // 判断是否为偶数,%取余为0即为偶数
                counts[num]++; // ++用来计数,num作为下标
            }
        }
        int index = -1, maxValue = 0; // index作为记录当前最小偶数,maxValue记录最大出现次数
        for(auto &count : counts){ // 遍历哈希表,使用指针count,first是偶数的值,second是出现次数
            if(index == -1 || count.second > maxValue || count.second == maxValue && index >count.first){ // 判断条件,当前的出现次数大于最大出现次数进行替换,或者当前出现次数等于最大出现次数,但当前偶数值小于index,进行替换
                index = count.first;
                maxValue = count.second;
            }
        }
        return index;
    }
};

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/416945.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenAI团队抢着用的编程语言?

作为一名合格的&#xff08;准&#xff09;程序员&#xff0c;必做的一件事是关注编程语言的热度&#xff0c;编程榜代表了编程语言的市场占比变化&#xff0c;它的变化更预示着未来的科技风向和机会&#xff01; 快一起看看本月排行有何看点&#xff1a; 4月Tiobe排行榜前15…

如何学习智能交通?

AI的专业领域知识是指AI与具体应用领域相结合时所需要的该应用领域的知识。AI的应用领域非常广泛&#xff0c;例如计算机视觉、智能交通、智能制造、智慧金融、智慧教育、智慧农业、智慧能源、智能通信、智能芯片等。本文主要介绍智能交通的基本概念、发展历程、主要研究内容、…

DAMA数据治理认证,一定要先考CDGA才能考CDGP吗?

DAMA认证为数据管理专业人士提供职业目标晋升规划&#xff0c;彰显了职业发展里程碑及发展阶梯定义&#xff0c;帮助数据管理从业人士获得企业数字化转型战略下的必备职业能力&#xff0c;促进开展工作实践应用及实际问题解决&#xff0c;形成企业所需的新数字经济下的核心职业…

react4:配置网络请求axios --- 配置@路径别名

1. axios 请求安装&#xff1a;npm i axios axios 二次封装&#xff1a;配置,拦截器等应用 在&#xff1a;utils文件夹下request.js中配置 //utils文件夹下request.js中配置//导入 axios import axios from "axios";//实例化axios var service axios.create({time…

QT5学习教程一——Hello World例子

一、打开 Qt Creator -文件-新建文件或项目-Application-Qt Widgets Application-选择&#xff0c;如图 1.1 图 1.2 将项目放到指定目录&#xff0c;便于管理。单击[下一步] 选择构建的环境&#xff0c;可以根据自己的配置来选择&#xff0c;本例子选择MSVC2015。MSVC是指微软的…

JAVA阶段考内容知识点的梳理

前言&#xff1a;这些都是很基本的&#xff0c;还有很多没有写出来&#xff0c;重点在于编程序理解。 目录 第一章概述 课堂总结 相关习题 第二章&#xff1a;语言基础 课堂总结 相关习题 第三章&#xff1a;类和对象 内容总结 相关习题 第四章&#xff1a;类的派生与…

【Linux】网络编程套接字(下)

&#x1f387;Linux&#xff1a; 博客主页&#xff1a;一起去看日落吗分享博主的在Linux中学习到的知识和遇到的问题博主的能力有限&#xff0c;出现错误希望大家不吝赐教分享给大家一句我很喜欢的话&#xff1a; 看似不起波澜的日复一日&#xff0c;一定会在某一天让你看见坚持…

【三十天精通 Vue 3】 第十天 Vue 状态管理详解

✅创作者&#xff1a;陈书予 &#x1f389;个人主页&#xff1a;陈书予的个人主页 &#x1f341;陈书予的个人社区&#xff0c;欢迎你的加入: 陈书予的社区 &#x1f31f;专栏地址: 三十天精通 Vue 3 文章目录引言一、Vue 3 状态管理概述1.1 状态管理的概念1.2 状态管理的作用…

Spark基础 - 名词汇总及集群模式概述

原文地址&#xff1a; Spark基础 - 名词汇总及集群模式概述 本文档内容参考Spark官方文档&#xff1a;Cluster Mode Overview 一. Glossary(术语) TermMeaningcommentApplicationUser program built on Spark. Consists of a driver program and executors on the cluster.…

Springboot应用整合Sentinel实现限流、熔断、降级笔记

可以使用官方的sentinel 也可使用进行持久化改造后的Sentinel &#xff0c;本文基于此进行记录。Sentinel持久化到Nacoshttps://blog.csdn.net/chenjian723122704/article/details/130098896 Sentinel版本为 1.8.6 Nacos版本为 2.2.0 关于网关限流、限流和熔断&#xff0c;我…

【Step1】Linux Kernel -基础

《Linux内核设计与实现.第3版》1-2章学习笔记 1. 获取内核源码 http://www.kernel.org 2. 内核版本命名规则 内核的版本号主要有四个数字组成。 从版本号&#xff1a; 偶数表示稳定版&#xff08;可用于企业级环境&#xff09;&#xff0c;奇数表示开发版&#xff1b; 修订…

ack应答机制

ACK在 Kafka 中&#xff0c;ack&#xff08;Acknowledgment&#xff09;机制是指用于确认生产者发送的消息已经被成功写入到 Kafka 分区中的一种机制。生产者可以通过 ack 参数来控制这个机制&#xff0c;以便根据自己的需求进行设置。 ACK应答级别0&#xff1a;生产者发送过来…

手机号码归属地 API 实现个性化推荐的思路分析

前言 随着移动互联网和智能手机的普及&#xff0c;越来越多的人使用手机上网和购物&#xff0c;移动营销已成为企业获取用户和提升品牌知名度的重要手段。手机号码归属地 API 作为移动营销的关键工具&#xff0c;具有广阔的应用前景。 本文将探讨如何利用手机号码归属地 API …

IDEA配置MAVEN_OPTS

IDEA配置MAVEN_OPTS​ 解决问题 maven MAVEN_OPTS设置 maven编译优化 maven编译速度慢 maven打包编译很慢 maven多线程编译打包 IDEA Maven配置教程​​测试环境:Win10(64位) i7-7700HQ 16GB​​ 参考文章: ​​ ​JVM参数MetaspaceSize的误解​​ Java HotSpot™ 64-Bit Ser…

【AI浪潮下的挑战和机遇】许多职业即将消失,AI 即将战胜人类了吗?

文章目录前言一、人类科技发展史二、 AI浪潮下的挑战1. 数据安全和隐私保护问题2. 带来新的伦理和道德问题3. 版权和知识产权问题三、对传统行业和就业的冲击1.传统文本编辑行业受到冲击2.就业岗位的变化3.工作流程的变化4.创意版权问题四、AI浪潮下的机遇1.提高效率和创意性2.…

【软考备战·希赛网每日一练】2023年4月12日

文章目录一、今日成绩二、错题总结第一题三、知识查缺题目及解析来源&#xff1a;2023年04月12日软件设计师每日一练 一、今日成绩 二、错题总结 第一题 解析&#xff1a; 依据题目画出PERT图如下&#xff1a; 关键路径长度&#xff08;从起点到终点的路径中最长的一条&#x…

使用MybatisPlus时注意点的记录

在 MyBatis-Plus 中&#xff0c;默认情况下&#xff0c;实体类的主键属性名必须为 "id"&#xff0c;如果实体类主键属性名为 其他比如"nbid"&#xff0c;则需要进行显式的用FileId配置或者在.XML中配置。 在使用MybatisPlus时,如果主键名是id 实体类属性…

Django REST Framework(DRF)框架之视图类(视图基类、Mixin扩展类、子类视图)

DRF框架之视图类的使用视图类概述视图基类Mixin扩展类子类视图类视图基类APIViewGenericAPIViewMixin扩展类ListModelMixinCreateModelMixinRetrieveModelMixinUpdateModelMixinDestroyModelMixin子类视图ListAPIViewCreateAPIViewRetrieveAPIViewDestoryAPIViewUpdateAPIViewL…

联想集团ESG与社会价值论坛召开,首次发布《联想集团2022社会价值报告》

对企业而言&#xff0c;ESG不再是选择题&#xff0c;而是必答题。 联想集团是ESG的先行者、领军者。 2023年4月11日&#xff0c;“联想集团ESG与社会价值论坛暨《联想集团2022社会价值报告》发布会”在京召开&#xff0c;会议由中国社会责任百人论坛、联想集团联合主办&#xf…

【图像】协议:常见的图像格式协议对比

1. 背景 不知不觉已经大半年没有写博客了。换了工作之后突然变忙了许多&#xff0c;紧张的项目节点一个接一个&#xff0c;高优先级的事一件接一件&#xff0c;让人兴奋的同时也变得很多时候没有时间去复盘去反思去沉淀。 最近在整理产品的feature list&#xff0c;各种各样的…