leetcode 136异或

tech2022-07-29  171

题目要求,要在线性时间复杂度内得出结果,且不要耗费额外空间

题中给的一次,两次会给人一种用异或的感觉

异或的相关性质 a异或a=0; b异或0等于b;

假设一个数字m出现一次,其余的数字都出现两次那么将所有的数字异或最后的结果就是m【依据是上面提到的异或的性质】

class Solution { public: int singleNumber(vector<int>& nums) { int res = 0; for(int n : nums) res ^= n; return res; } };
最新回复(0)