這題考的是桶排序,知道的很簡單,不知道的話就很難app
1 public class Solution { 2 public List<Integer> findDisappearedNumbers(int[] nums) { 3 int a = 0; 4 int b = 0; 5 for (int i = 0; i < nums.length; i++) { 6 while (nums[i] != nums[nums[i]-1]) { 7 a = nums[i]; 8 b = nums[nums[i]-1]; 9 nums[nums[i]-1] = a; 10 nums[i] = b; 11 } 12 } 13 List<Integer> ans = new ArrayList<Integer>(); 14 for (int i = 0; i < nums.length; i++) { 15 if (nums[i] != i+1) ans.add(i+1); 16 } 17 return ans; 18 } 19 }