題目思路雜湊在乙個陣列 nums 中除乙個數字只出現一次之外,其他數字都出現了三次。請找出那個只出現一次的數字。
1
<=n
ums.
leng
th
<
=10000,1
<=n
ums[
i]
<231
1 <= nums.length <= 10000,1 <= nums[i] < 2^
1<=n
ums.
leng
th<=1
0000
,1<=n
ums[
i]<23
1
c++雜湊錶用unordered_map實現,注意pair.first和pair.second
位運算
c++ 雜湊表
class
solution
return0;
}};
python 位運算
class
solution
:def
singlenumber
(self, nums: list[
int])-
>
int:
ans =
0for i in
range(32
):#一位一位判斷
cnt =
0for num in nums:
if num &
1
1if cnt %3==
1:#出現1次數字的這一位是1
ans ^=(
1
劍指offer 面試題56 陣列中數字出現的次數
問題1 陣列中只出現一次的兩個數字 乙個整型陣列裡除了兩個數字之外,其他的數字都出現了兩次。請寫程式找出這兩個只出現一次的數字。2 nums 10000 思路 異或 首先,對陣列的每個數字依次進行異或,得到異或後的結果value。然後,記value最右邊第一位為1的位為i,依據第i位為1 0將陣列分...
劍指 面試題56 1 陣列中數字出現的次數
題目 乙個整型陣列 nums 裡除兩個數字之外,其他數字都出現了兩次。請寫程式找出這兩個只出現一次的數字。要求時間複雜度是o n 空間複雜度是o 1 2 n um s 10000 2 nums 10000 2 n ums 1 0000 思路 任何乙個數字異或它自己都是0,0異或任何數還是原數字。所以...
劍指offer 面試題56 陣列中數字出現的次數
乙個整型陣列nums裡除兩個數字之外,其他數字都出現了兩次。請寫程式找出這兩個只出現一次的數字。要求時間複雜度是o n 空間複雜度是o 1 輸入 nums 4,1,4,6 輸出 1,6 或 6,1 輸入 nums 1,2,10,4,1,4,3,3 輸出 2,10 或 10,2 字典 時間複雜度是o ...