首页 > 编程语言 >【算法题】只出现一次的数字 III

【算法题】只出现一次的数字 III

时间:2023-10-26 10:03:25浏览次数:41  
标签:数字 nums int 示例 算法 num ans freq III


题目:

给你一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。

你必须设计并实现线性时间复杂度的算法且仅使用常量额外空间来解决此问题。

示例 1:

输入:nums = [1,2,1,3,2,5]
输出:[3,5]
解释:[5, 3] 也是有效的答案。
示例 2:

输入:nums = [-1,0]
输出:[-1,0]
示例 3:

输入:nums = [0,1]
输出:[1,0]

提示:

2 <= nums.length <= 3 * 104
-231 <= nums[i] <= 231 - 1
除两个只出现一次的整数外,nums 中的其他数字都出现两次

java代码:

class Solution {
    public int[] singleNumber(int[] nums) {
        Map<Integer, Integer> freq = new HashMap<Integer, Integer>();
        for (int num : nums) {
            freq.put(num, freq.getOrDefault(num, 0) + 1);
        }
        int[] ans = new int[2];
        int index = 0;
        for (Map.Entry<Integer, Integer> entry : freq.entrySet()) {
            if (entry.getValue() == 1) {
                ans[index++] = entry.getKey();
            }
        }
        return ans;
    }
}


标签:数字,nums,int,示例,算法,num,ans,freq,III
From: https://blog.51cto.com/u_6813689/8030087

相关文章

  • 【专题】2023数字孪生世界白皮书报告PDF合集分享(附原数据表)
    原文链接:https://tecdat.cn/?p=34041原文出处:拓端数据部落公众号本次报告合集分为数字孪生综述、技术架构建设、核心技术分享、新型技术成果展示以及重点行业应用五大内容版块。从数字孪生应用建设路径的角度出发,着重提出了“数智视融合,虚实人联动”的观点,并提供数字孪生应用技......
  • APP渗透--magisk+LSPosed+算法助手环境安装
    安装mgisk1、先安装app-debug.apk首先设置好模拟器的设置设置为可写入开启root之后重启安装app-debug.apk然后点开这个面具给root权限点击安装勾选这个选项之后就重启然后点开面具之后点击下一步必须看到安装到系统分区之后点击开始等待安装直到这里出现alldon......
  • 电机模型预测控制算法
    电机模型预测控制(ModelPredictiveControl,简称MPC)是一种基于模型的先进控制算法,适用于电机矢量控制。与传统的比例积分控制(PI控制)相比,MPC算法能够更好地优化控制性能和动态响应。下面是电机模型预测控制算法的基本步骤:建立电机模型:首先,需要建立电机的动态数学模型。一般情况下,可以......
  • 电机矢量控制算法和例程
    电机矢量控制算法是一种高级的电机控制方法,它通过将电机转子空间矢量转换到旋转坐标系中,并在该坐标系中进行控制来实现对电机的精确控制。下面是对电机矢量控制算法的详细解释:坐标系变换:电机矢量控制首先将电机转子空间矢量变换到一个旋转坐标系中,通常是dq坐标系。dq坐标系是以转子......
  • 开环控制算法
    开环控制是一种基础的控制算法,它不依赖于反馈信息来调整输出,而是根据预设的输入信号直接生成控制信号。对于BLDC电机,开环控制算法可以简单地根据输入信号来控制相位切换,从而控制电机的转速。以下是一个基本的BLDC电机的开环控制算法示例://定义BLDC电机的引脚intphaseA=2;int......
  • 13. 罗马数字转整数
    罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符数值I1V5X10L50C100D500M1000例如,罗马数字2写做II,即为两个并列的1。12写做XII,即为X+II。27写......
  • 由一个项目引起智能工厂及数字工厂的灵魂拷问
    智能制造到底是什么?是不是可控成本范围内生产的有序性和连续性?自动化、数字化、信息化和智能化都是手段。但是也应该意识到降本增效的有限性。    介绍一下背景,这是工信部直管的项目,一个新建厂区,规模不小,一直与用户保持着联系,在老厂区调研了2周,前后......
  • Apple开发_字符串后缀如果包含有数字,提取出字符串后缀全部的数字
    NSString分类@implementationNSString(GC)-(NSString*)suffix_Num{//匹配字符串末尾的数字NSString*pattern=@"\\d+$";NSError*error=nil;NSRegularExpression*regex=[NSRegularExpressionregularExpressionWithPattern:patternoptions......
  • python往图片上面添加数字
    需求背景:做倒计时图片;实现思路:先准备好一张图片作为背景图,用python往图片上添加天数,保存图片;从0-69天,一共生成70张图片背景图如图:代码如下:#这个程序用来生成70张倒计时图片fromPILimportImage,ImageDraw,ImageFontforiinrange(70):#读取图片img=Im......
  • 斜拉桥智慧施工数字孪生 | 图扑赛博朋克
    斜拉桥(又称斜张桥),作为现代桥梁工程中的一种重要类型,代表了现代工程技术的高度成就,在全球范围内已得到广泛的应用。斜拉桥采用了高强度的材料和精密的建筑技术,能够跨越宽阔的河流、峡谷和深渊。在新基建计划中,斜拉桥成为城市交通的关键纽带,在城市发展、交通改善、科技创新和可持续......