leetcode_題解_single number_小技巧

Given an array of integers, every element appears twice except for one. Find that single one.

Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

直接異或運算:出現2次的數據則會自然抵消,最後只剩下出現一次的數據。

class Solution {
public:
    int singleNumber(int A[], int n) {
        int x;
        for(int i=0; i<n; i++)
            x^=A[i];
        return x;
    }
};


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章