package writtenExamination; /** * @author lindaZ * @date 2015年10月22日 * @todo 找出数组中仅出现一次的数,其余数字出现两次 */ public class Once { public static void main(String[] args) { int[] nums = {1,2,3,4,4,3,2,1,5,7,5}; int result = nums[0]; System.out.println("结果为:"+new Once().find(nums, result)); } int find(int[] nums,int result){ for (int i=0;i<nums.length;i++){ result = nums[i]; for (int j=0;j<nums.length;j++){ if (j!=i){ result ^= nums[j]; } } if (result == 1){ result = i; break; } } return result; } }
如果该数组A中只有一个数字出现了一次,其他的数字都出现了两次,那么求出该数字就很简单,其值就是 A[0] ^ A[1] ^ … ^ A[n-1]
本文介绍了一种在数组中查找仅出现一次的数字的方法,所有其他数字均出现两次。通过使用异或运算符,可以有效地找到这个独特的数字,提供了一个简洁的解决方案。
776

被折叠的 条评论
为什么被折叠?



