現在有乙個整數型別的陣列,陣列中素只有乙個元素只出現一次,其餘的元素都出現兩次。注意:
你需要給出乙個線性時間複雜度的演算法,你能在不使用額外記憶體空間的情況下解決這個問題麼?示例1
輸入
[1,0,1]返回值一、 map實現
**
class
solution
map<
int,
int>
::iterator iter;
forbegin()
end(
);iter++)}
}};
二、 異或實現因為每個元素只出現一次或兩次,且兩個相同的數異或值為0,任何數和0異或值為它本身 因此對每個值進行異或最後值即為答案
class
solution
return res;}}
;
個人覺得用map比較好,當元素個數》2時,異或就無用武之地了。 牛客網 陣列中只出現一次的數字
乙個整型陣列裡除了兩個數字之外,其他的數字都出現了兩次。請寫程式找出這兩個只出現一次的數字。首先我們考慮這個問題的乙個簡單版本 乙個陣列裡除了乙個數字之外,其他的數字都出現了兩次。請寫程式找出這個只出現一次的數字。這個題目的突破口在 題目為什麼要強調有乙個數字出現一次,其他的出現兩次?我們想到了異或...
牛客網 陣列中只出現一次的數字
乙個整型陣列裡除了兩個數字之外,其他的數字都出現了兩次。請寫程式找出這兩個只出現一次的數字。考慮過程 首先我們考慮這個問題的乙個簡單版本 乙個陣列裡除了乙個數字之外,其他的數字都出現了兩次。請寫程式找出這個只出現一次的數字。這個題目的突破口在 題目為什麼要強調有乙個數字出現一次,其他的出現兩次?我們...
牛客66道程式設計題 陣列中只出現一次的數字
乙個整型陣列裡除了兩個數字之外,其他的數字都出現了兩次。請寫程式找出這兩個只出現一次的數字。class solution 返回 a,b 其中ab是出現一次的兩個數字 def self,array write code here tmp for a in array if a in tmp tmp.r...