找出这个重复的数字
有一个数组 数组里面从1到N 数组长度为N+1 多出来的数字是1到N里面的随机重复项 找出这个重复的数字 比如下面这个数组 var arr =[1,2,3,4,5,6,6,7,8,9,10] 请找出一样的那个数字
var arr = []; var N = 20; // 设数组的长度 for(var i = 0; i< N; i++){ // 初始化数组并生成数据 arr[i] = i + 1; } arr[arr.length - 1] = parseInt(Math.random() * (N - 1)) + 1; var index = parseInt(Math.random() * arr.length); var temp = arr[arr.length - 1] arr[arr.length - 1] = arr[index] arr[index] = temp console.log(arr) // 初始化数组完成
// 运行代码 var x1 = 0; for(var i = 1; i <= N - 1; i++){ x1 = x1 ^ i; } for(var i = 0; i < N; i++){ x1 = x1 ^ arr[i]; } console.log(x1);