题解 | #农场牛的标识#
农场牛的标识
https://www.nowcoder.com/practice/a9dfab1f870046e4bd829c8a9223f9bc
import java.util.*; public class Solution { public int singleNumber(int[] nums) { int result = 0; for (int num : nums) { result ^= num; // 使用异或运算符,相同的数字异或结果为0,不同的数字异或结果为该数字 } return result; } }
异或运算(XOR)来解决问题。我们初始化 result
为 0,然后遍历数组中的每个数字进行异或运算。由于异或运算满足交换律和结合律,因此重复出现的标识会被相互抵消为0,而只出现一次的标识异或结果就是该标识本身。