您的位置:首页 > 移动开发

LeetCode: Find All Numbers Disappeared in an Array

2017-03-15 10:12 429 查看
这题考的是桶排序,知道的很简单,不知道的话就很难

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 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: