SingleNumber I:

题目链接:https://leetcode-cn.com/problems/single-number/

题意:

  给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

  说明:

  你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?

  示例 1:

  输入: [2,2,1]
  输出: 1

  示例 2:

  输入: [4,1,2,1,2]
  输出: 4

分析:

  利用异或(xor)运算,两个相同的数异或为0

代码如下:

 1 class Solution {
 2 public:
 3     int singleNumber(int A[], int n) {
 4         int ans = 0;
 5         for(int i = 0; i < n; ++i) {
 6             ans ^= A[i];
 7         }
 8         return ans;
 9     }
10 };
View Code

相关文章:

  • 2021-11-14
  • 2021-12-24
  • 2021-11-08
  • 2021-06-29
  • 2021-10-02
  • 2021-08-09
  • 2022-12-23
猜你喜欢
  • 2022-01-08
  • 2022-02-04
  • 2021-07-23
  • 2021-05-27
  • 2021-08-20
  • 2021-11-20
  • 2021-07-16
相关资源
相似解决方案