首先數學基礎web
一個數與自身異或是0,一個數與0異或是自己
異或具備交換率。
舉個栗子:2 3 4 2 3 全部數字依次異或運算:2 xor 3 xor 4 xor 2 xor 3 = (2 xor 2) xor (3 xor 3) xor 4= 0 xor 0 xor 4 = 4 給定一個非空整數數組,除了某個元素只出現一次之外,其他每一個元素均出現兩次。找出那個只出現了一次的元素。
說明:算法
你的算法應該具備線性時間複雜度。 你能夠不使用額外空間來實現嗎?數組
示例 1:svg
輸入: [2,2,1]
輸出: 1
示例 2:spa
輸入: [4,1,2,1,2]
輸出: 4.net
class Solution { public: int singleNumber(vector<int>& nums) { int t=0; for(int i=0;i<nums.size();i++) t^=nums[i]; return t; } };
本文分享 CSDN - 希境。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。code