力扣热题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]
};
相关推荐
天外飞雨道沧桑1 小时前
TypeScript 中 omit 和 record 用法
前端·javascript·typescript
Dlrb12111 小时前
C语言-指针三
c语言·算法·指针·const·命令行参数
Tisfy2 小时前
LeetCode 2540.最小公共值:双指针(O(m+n))
算法·leetcode·题解·双指针
IronMurphy2 小时前
【算法四十七】152. 乘积最大子数组
算法
淘矿人3 小时前
Claude辅助DevOps实践
java·大数据·运维·人工智能·算法·bug·devops
Cosolar3 小时前
万字详解:RAG 向量索引算法与向量数据库架构及实战
数据库·人工智能·算法·数据库架构·milvus
暗冰ཏོ3 小时前
VUE面试题大全
前端·javascript·vue.js·面试
落羽的落羽5 小时前
【算法札记】练习 | Week4
linux·服务器·数据结构·c++·人工智能·算法·动态规划
萑澈5 小时前
算法竞赛入门:C++ STL核心用法与时空复杂度速查手册
数据结构·c++·算法·stl