力扣热题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]
};
相关推荐
自由生长20247 分钟前
位运算第1篇-异或运算-快速找出重复数字
算法
xxxxxmy26 分钟前
同向双指针(滑动窗口)
python·算法·滑动窗口·同向双指针
释怀°Believe33 分钟前
Daily算法刷题【面试经典150题-5️⃣图】
算法·面试·深度优先
List<String> error_P34 分钟前
数据结构:链表-单向链表篇
算法·链表
我笔记39 分钟前
vue 子父调用
前端·javascript·vue.js
ss27340 分钟前
ConcurrentHashMap:扩容机制与size()方法
算法·哈希算法
2401_860319521 小时前
在React Native鸿蒙跨平台开发中实现一个冒泡排序算法并将其应用于数据排序,如何进行复制数组以避免直接修改状态中的数组
javascript·算法·react native·react.js·harmonyos
im_AMBER1 小时前
Leetcode 72 数组列表中的最大距离
c++·笔记·学习·算法·leetcode
编程饭碗1 小时前
【Java循环】
java·服务器·算法
毕设源码-朱学姐1 小时前
【开题答辩全过程】以 基于vue.js的校园二手平台为例,包含答辩的问题和答案
前端·javascript·vue.js