力扣137 只出現一次的數字ii

2021-10-11 02:54:46 字數 684 閱讀 5471

題目描述:

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

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

示例 :

輸入: [2,2,3,2]

輸出: 3

輸入: [0,1,0,1,0,1,99]

輸出: 99

題目思路:

我們依然採用位運算,利用異或運算的特殊性質進行求解,這次不同的是其他的數字都出現了三次,我們可以和與運算一起搭配使用進行判斷。

異或運算:

x ^ 0 = x​

x ^ x = 0

與運算:

x & ~x = 0

x & ~0 = x

只出現一次x & ~0 = x

出現三次x & ~x = 0

class

solution

return ret;}}

;

力扣137 只出現一次的數字 II

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現了三次。找出那個只出現了一次的元素。說明 你的演算法應該具有線性時間複雜度。題目鏈結 示例 1 輸入 2,2,3,2 輸出 3 示例 2 輸入 0,1,0,1,0,1,99 輸出 99 使用 hashset 對出現的元素進行記錄,使...

137 只出現一次的數字 II

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現了三次。找出那個只出現了一次的元素。你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?示例 1 輸入 2,2,3,2 輸出 3 示例 2 輸入 0,1,0,1,0,1,99 輸出 99 使用python3,用了額外的空...

137 只出現一次的數字 II

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現了三次。找出那個只出現了一次的元素。說明 你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?示例 1 示例 2 1.二進位制下不考慮進製的加法 本題為 136.single number 的拓展,136 題中我們用到了...