Given an array of integers, every element appears three times except for one. Find that single one.
給一個數(shù)組,每個數(shù)字都出現(xiàn)三次,只有一個數(shù)字出現(xiàn)一次,找出這個出現(xiàn)一次的數(shù)字。
參考代碼:

參考代碼
解題思路:定義長度32的數(shù)組,每個位置存儲的是,nums里每個數(shù)字的第i個位置的 1 的個數(shù),存儲完畢i的位置的 1 的個數(shù)后,進行取模3運算,如果結果為 0 說明被求數(shù)字在這個位置上的bit是0,如果為 1 則說明被求數(shù)字這個位置上的數(shù)字是 1,一次類推,求完第一個位置,求第二個,再求第 i 個 位置,所有的結果進行 或(|) 運算,最終把所求的數(shù)字求出。
時間是 O(32*N),如果把出現(xiàn)3次改為k次,只需要改為 模 k即可