力扣热题100 JavaScript--136. 只出现一次的数字

给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

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

示例 1 :

输入:nums = [2,2,1]

输出:1

示例 2 :

输入:nums = [4,1,2,1,2]

输出:4

示例 3 :

输入:nums = [1]

输出:1

javascript 复制代码
 //1、异或
var singleNumber = function(nums) {
 var a= 0
 for(var i = 0;i < nums.length;i++){
     a ^= nums[i] 
 }
 return a
};
javascript 复制代码
//2、排除
var singleNumber = function(nums) {
var temp = []
for(var i = 0;i <nums.length;i++){
    if(temp.indexOf(nums[i])==-1){
        temp.push(nums[i])
    }else{
        temp.splice(temp.indexOf(nums[i]),1)
    }
}
return temp[0]
};
相关推荐
天天进步201511 分钟前
AI Agent 与流式处理:Motia 在生成式 AI 时代的后端范式
javascript
心柠13 分钟前
vue3相关知识总结
前端·javascript·vue.js
你撅嘴真丑18 分钟前
字符环 与 变换的矩阵
算法
早点睡觉好了35 分钟前
重排序 (Re-ranking) 算法详解
算法·ai·rag
gihigo199838 分钟前
基于全局自适应动态规划(GADP)的MATLAB实现方案
算法
常年游走在bug的边缘1 小时前
掌握JavaScript作用域:从函数作用域到块级作用域的演进与实践
开发语言·前端·javascript
极致♀雨2 小时前
vue2+elementUI table表格勾选行冻结/置顶
前端·javascript·vue.js·elementui
ctyshr2 小时前
C++编译期数学计算
开发语言·c++·算法
林shir2 小时前
3-15-前端Web实战(Vue工程化+ElementPlus)
前端·javascript·vue.js
zh_xuan2 小时前
最小跳跃次数
数据结构·算法