/** * @param {number[]} nums * @return {number[]} */ var findDisappearedNumbers = function(nums) { for(var i = 0; i < nums.length; ) { var index = nums[i]; if(nums[index - 1] != index) { nums[i] = nums[index - 1]; nums[index - 1] = index; } else i++; } var res = []; for(var i = 0; i < nums.length; i++) { if(nums[i] != i + 1) res.push(i + 1); } return res; }; console.log(findDisappearedNumbers([4,3,2,7,8,2,3,1]));