1. 程式人生 > >136 Single Number 數組中除一個數外其他數都出現兩次,找出只出現一次的數

136 Single Number 數組中除一個數外其他數都出現兩次,找出只出現一次的數

時間 body 算法 一次 整數 除了 給定一個整數數組 pub leetcode

給定一個整數數組,除了某個元素外其余元素均出現兩次。請找出這個只出現一次的元素。
備註:
你的算法應該是一個線性時間復雜度。 你可以不用額外空間來實現它嗎?

詳見:https://leetcode.com/problems/single-number/description/

class Solution {
public:
    int singleNumber(vector<int>& nums) {
        int n=nums.size();
        if(n==0||nums.empty())
        {
            return -1;
        }
        int num=0;
        for(int n:nums)
        {
            num^=n;
        }
        return num;
    }
};

136 Single Number 數組中除一個數外其他數都出現兩次,找出只出現一次的數