LeetCode 位運算 只出現一次的數字

2022-08-20 09:33:12 字數 520 閱讀 5353

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。

說明:

你的演算法應該具有線性時間複雜度。 你可以不使用額外空間來實現嗎?

示例:

輸入: [2,2,1]

輸出: 1

輸入: [4,1,2,1,2]

輸出: 4

題目鏈結

可以用乙個雜湊表記錄每個元素出現的次數,然後輸出那個只出現一次的元素即可。但題目要求不使用額外空間,所以不能用雜湊表。

兩個相等的數字異或的結果為0,對於異或有a^a=0,0^a=a。因為陣列中只有乙個出現一次的資料,其他均出現兩次,所以將陣列中的元素異或,得到的結果就是那個只出現一次的數字。

**如下:

class solution 

return ans;

}};

位運算 LeetCode136 只出現一次的數字

題目 給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。說明 你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?示例 1 輸入 2,2,1 輸出 1 示例 2 輸入 4,1,2,1,2 輸出 4思路 限制線性時間複雜度且不使用額外空間...

leetcode位運算學習筆記 只出現一次的數字

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素 使用常數空間 1 結合律 a b c a b c 2 對於任何數x,都有x x 0,x 0 x 初始化乙個元素a 0,與所有元素做一次異或,即可得到只出現一次的元素 class solution d...

位運算 只出現一次的的數字

異或的兩個值 相同為假,不同為真 交換兩個整數的值時可以不用第三個引數a a b a b b b a b a乙個只出現一次的數字。乙個整型陣列裡除了乙個數字之外,其他的數字都出現了偶數次。請寫程式找出這個只出現一次的數字。int num 0 if array.length 0 return num ...