0
点赞
收藏
分享

微信扫一扫

【LeeCode】448. 找到所有数组中消失的数字

乌龙茶3297 2022-12-03 阅读 47

【题目描述】

给你一个含 ​n​ 个整数的数组 ​nums​ ,其中 ​nums[i]​ 在区间 ​[1, n]​ 内。请你找出所有在 ​[1, n]​ 范围内但没有出现在 ​nums​ 中的数字,以数组的形式返回结果

​​https://leetcode.cn/problems/find-all-numbers-disappeared-in-an-array/?favorite=2cktkvj​​


【示例】

【LeeCode】448. 找到所有数组中消失的数字_List

【代码】

admin

package com.company;
import java.util.*;

class Solution {

public List<Integer> findDisappearedNumbers(int[] nums) {
int len = nums.length;
List<Integer> list = new ArrayList<>();
Map<Integer, Integer> map = new HashMap<>();

for (int i = 0; i < len; i++) {
map.put(nums[i], map.getOrDefault(nums[i], 0) + 1);
}

for (int i = 1; i <= len; i++){
if (!map.containsKey(i)){
list.add(i);
}
}
System.out.println(list.toString());
return list;
}
}

public class Test {
public static void main(String[] args) {
int[] arr = {4,3,2,7,8,2,3,1};
new Solution().findDisappearedNumbers(arr);
}
}

举报

相关推荐

0 条评论