トピックへのリンク:https://leetcode-cn.com/problems/single-number/
件名の説明:
整数の非空の配列を考えると、要素に加えて、一度だけ表示され、各要素の残りの部分は二回表示されます。要素のみに一度表示されていることを知るために。
説明:
あなたのアルゴリズムは線形時間複雑性を持っている必要があります。あなたはそれを達成するために余分なスペースを使用することはできませんか?
例:
例1:
输入: [2,2,1]
输出: 1
例2:
输入: [4,1,2,1,2]
输出: 4
アイデア:
その上でXOR
def singleNumber(self, nums: List[int]) -> int:
res = nums[0]
for num in nums[1:]:
res ^= num
return res
ジャワ
class Solution {
public int singleNumber(int[] nums) {
int res = nums[0];
for (int i = 1; i < nums.length; i++) res ^= nums[i];
return res;
}
}