news 2026/8/12 20:05:51

第 172 场双周赛Q1——3779. 得到互不相同元素的最少操作次数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第 172 场双周赛Q1——3779. 得到互不相同元素的最少操作次数

题目链接:3779. 得到互不相同元素的最少操作次数(中等)

算法原理:

解法:队列+哈希表

213ms击败4.19%

时间复杂度O(N)

①数据初始化:
用队列存原数组元素(记录当前剩余元素);
用 HashMap 统计每个元素的出现次数
②提前终止判断:
若初始数组已无重复元素(哈希表键数量 = 队列长度),直接返回 0
③循环执行删除操作:
每次操作删除队列前 3 个元素,操作次数 + 1;
更新哈希表:对应元素次数减 1,次数为 0 则从表中移除
④操作后检查终止条件:
若剩余元素已无重复(哈希表键数量 = 当前队列长度),立即返回当前操作次数
⑤处理剩余不足 3 个的元素:
若剩余元素不足 3 个,需额外 1 次操作(删除剩余元素),返回次数 + 1
循环结束后,返回总操作次数

Java代码:

class Solution { public int minOperations(int[] nums) { int n=nums.length; Queue<Integer> q=new LinkedList<>(); //存<数,出现次数> Map<Integer,Integer> hash=new HashMap<>(); for(int x:nums){ q.offer(x); hash.put(x,hash.getOrDefault(x,0)+1); } //所有元素均不重复就立刻返回 if(hash.keySet().size()==q.size()) return 0; int ret=0; //数组不空且不包含任何重复元素才进入循环 while(!q.isEmpty()&&hash.keySet().size()!=q.size()){ if(q.size()<3) return ret+1; for(int i=0;i<3;i++){ int out=q.poll(); hash.put(out,hash.get(out)-1); if(hash.get(out)==0) hash.remove(out); } ret++; //如果剩余元素均不重复,直接返回结果 if(hash.keySet().size()==q.size()) return ret; } return ret; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/10 20:09:49

电力系统故障中的运行潮流分析与优化控制研究

电力系统故障运行潮流分析 搞电力系统的人都知道&#xff0c;系统故障时的潮流分析比正常工况刺激多了。就像你正吃着火锅唱着歌&#xff0c;突然变压器炸了&#xff0c;这时候要快速判断全网哪个节点电压会崩、哪条线路会过载&#xff0c;这时候故障潮流计算就是你的救命稻草…

作者头像 李华
网站建设 2026/8/11 1:07:14

Open-AutoGLM + JMeter组合拳,实现自动化压测的3倍效能提升

第一章&#xff1a;Open-AutoGLM 与 JMeter 组合压测的背景与意义 在当前人工智能与自动化测试深度融合的技术趋势下&#xff0c;大语言模型&#xff08;LLM&#xff09;驱动的测试工具逐渐成为提升软件质量保障效率的关键手段。Open-AutoGLM 作为一款基于开源大语言模型的自动…

作者头像 李华
网站建设 2026/8/12 19:24:39

企业级自动化测试工具选型难题(Open-AutoGLM与UFT Mobile终极PK)

第一章&#xff1a;企业级自动化测试工具选型的核心挑战在企业级应用系统日益复杂的背景下&#xff0c;自动化测试已成为保障软件质量的关键环节。然而&#xff0c;面对多样化的技术栈、多变的业务场景以及庞大的测试规模&#xff0c;企业在选择合适的自动化测试工具时面临诸多…

作者头像 李华
网站建设 2026/8/12 10:40:55

第 481 场周赛Q2——3784. 使所有字符相等的最小删除代价

题目链接&#xff1a;3784. 使所有字符相等的最小删除代价&#xff08;中等&#xff09; 算法原理&#xff1a; 解法&#xff1a;贪心 3ms击败100.00% 时间复杂度O(N) 正难则反&#xff0c;问题转化&#xff1a;保留总代价最大的字母&#xff0c;其余全删 方法&#xff1a;用数…

作者头像 李华
网站建设 2026/8/11 0:11:30

你的问卷,是在收集“正确答案”还是“真实数据”?

凌晨两点&#xff0c;社会学博士生小陈盯着屏幕上不到10%的问卷回收率&#xff0c;陷入了深深的自我怀疑。她精心设计了50道题&#xff0c;从人口统计问到深度态度&#xff0c;自以为逻辑严密。然而&#xff0c;冰冷的现实是&#xff1a;受访者要么在第一页就放弃&#xff0c;要…

作者头像 李华
网站建设 2026/8/12 20:00:28

还在用UFT Mobile?你可能错过了Open-AutoGLM这3个革命性特性

第一章&#xff1a;从UFT Mobile到Open-AutoGLM的演进逻辑随着移动设备种类的爆炸式增长和测试自动化需求的深化&#xff0c;传统移动应用测试框架逐渐暴露出可扩展性差、AI能力缺失等问题。UFT Mobile作为早期企业级解决方案&#xff0c;依赖预设脚本与人工干预&#xff0c;在…

作者头像 李华