欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

异或的灵活使用1-2(找出数组中那个落单的数)

程序员文章站 2022-04-03 08:52:28
...

异或的灵活使用1-2(找出数组中那个落单的数)

 @Test
    public void test1(){
        //制造一个长度为N的符合题意的数组
        int N=11;
        int[] array=new int[N];
        for (int i =0 ; i <((N-1)/2) ; i++) {
            array[i]=i+1;
            array[i+5]=i+1;
        }
        Random random = new Random();
        int i = random.nextInt(N - 2);
        array[N-1]=i+N;
        System.out.println(Arrays.toString(array));
        //找出多出来的那个
        int result=0;
        //将数组里面的数互相异或求得结果
        for (int j = 0; j <N ; j++) {
            result=result^array[j];
        }
        System.out.println(result);
    }
相关标签: 算法