136.只出现一次的数字

136. 只出现一次的数字 - 力扣(LeetCode)

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

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

示例 1 :

复制代码
输入:nums = [2,2,1]
输出:1

示例 2 :

复制代码
输入:nums = [4,1,2,1,2]
输出:4

示例 3 :

复制代码
输入:nums = [1]
输出:1

提示:

  • 1 <= nums.length <= 3 * 104
  • -3 * 104 <= nums[i] <= 3 * 104
  • 除了某个元素只出现一次以外,其余每个元素均出现两次。

思路

利用异或运算;借鉴文章:http://t.csdnimg.cn/oydZq

完整代码

复制代码
class Solution {
    public int singleNumber(int[] nums) {
            int result = nums[0];
            if(nums.length>1){
                for(int i=1;i<nums.length;i++){
                    result = result^nums[i];
                }
            }
            return result;
    }
}
相关推荐
lifallen18 小时前
Kafka 内存池MemoryPool 设计
数据结构·kafka·apache
凯哥Java18 小时前
适应新环境:Trae编辑器下的IDEA快捷键定制
java·编辑器·intellij-idea
從南走到北18 小时前
JAVA同城打车小程序APP打车顺风车滴滴车跑腿源码微信小程序打车源码
java·开发语言·微信·微信小程序·小程序
落日漫游18 小时前
K8s资源管理:高效管控CPU与内存
java·开发语言·kubernetes
RTC老炮18 小时前
webrtc弱网-LossBasedBandwidthEstimation类源码分析与算法原理
网络·算法·webrtc
wangmengxxw18 小时前
Maven的介绍及基本使用
java·maven
豆浩宇18 小时前
Conda环境隔离和PyCharm配置,完美同时运行PaddlePaddle和PyTorch
人工智能·pytorch·算法·计算机视觉·pycharm·conda·paddlepaddle
一只鱼^_18 小时前
牛客周赛 Round 108
数据结构·c++·算法·动态规划·图论·广度优先·推荐算法
KIDAKN19 小时前
RabbitMQ 可靠传输性(包括消息确认, 持久性和发送方确认)
java·rabbitmq·java-rabbitmq