跳转到主内容
极星编程网:以代码为星,赴技术山海!

单号I

问题 我们必须找到只出现过一次的数字。 暴力方法是使用 hashmap 来跟踪值的计数,然后返回 count =1 的值; 使用位操作的最佳方法: 我们知道对于所有其他组合,1^0 = 1、0 ^1 = 1、0 ^ 0 = 0、1 ^ 1= 0。 这意味着对于相同的值,异或给出 0,因此如果我们异或数组中的所有值,它将只给出计数为 1 的数字(因为其余值将变成 0) tc:o(n) sc:o(1)
class Solution { public int singleNumber(int[] nums) { int single = nums[0]; for(int i =1;i

相关文章