力扣热题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]
};
相关推荐
ysu_03146 小时前
05 | 持久化撤销提示非核心功能
算法·游戏程序
浮沉9878 小时前
二分查找算法概述&通用模板
算法
牧濑红莉8 小时前
网络安全竞赛pwn全解及第一道ai的wp
javascript·.net
kyriewen8 小时前
别再用AI debug了——这5种bug越修越烂
前端·javascript·ai编程
Keven_119 小时前
算法札记:SPFA判负环算法的证明
算法
什巳9 小时前
JAVA练习278- 和为 K 的子数组
java·学习·算法·leetcode
Jerry9 小时前
LeetCode 347. 前 K 个高频元素
算法
Young Doro10 小时前
SAC 算法
线性代数·算法·机器学习