算法:只出现一次的数字(位运算:异或运算)

2023-12-13 11:29:43

?异或运算 时间复杂度 O(n) 空间复杂度 O(1)

/**
 * @param {number[]} nums
 * @return {number}
 */
var singleNumber = function (nums) {
    let item = nums[0]
    if (nums.length > 1) {
        for (let i = 1; i <= nums.length; i++) {
            // 将10进制转成2进制进行异或运算(相同得0,不同得1)
            // 最后转换回10进制数
            item = item ^ nums[i]
            console.log(item)
        }
    }
    return item
};

文章来源:https://blog.csdn.net/sdhshsjh/article/details/134946672
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。