|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- Given an array of integers where 1 ≤ a[i] ≤ n (n = size of array), some elements appear twice and others appear once.
- Find all the elements of [1, n] inclusive that do not appear in this array.
- Could you do it without extra space and in O(n) runtime? You may assume the returned list does not count as extra space.
- Example:
- Input:
- [4,3,2,7,8,2,3,1]
- Output:
- [5,6]
复制代码
- class Solution {
- public List<Integer> findDisappearedNumbers(int[] nums) {
- List<Integer> list = new ArrayList<>();
- if(nums.length == 0) return list;
- int[] arr = new int[nums.length+1];
- for(int i = 0; i< nums.length ; i++) arr[nums[i]]++;
- for(int i = 1; i< arr.length; i ++)
- {
-
- if(arr[i] == 0) list.add(i);
- }
- return list;
- }
- }
复制代码 |
|