本文主要是介绍Leetcode第448题——找到所有数组中消失的数字,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、题目描述
给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。
二、解题思路
1.首先将数组中的元素全部添加到Set集合当中,利用set集合去重的特点
2.遍历数组元素,如果不包含在Set集合内,说明该元素不存在,添加到待返回结果的list的中
3.返回Integer类型的list结果
三、代码实现
class Solution {public List<Integer> findDisappearedNumbers(int[] nums) {Set<Integer> set = new HashSet<>();for(int x:nums){set.add(x);}List<Integer> res = new ArrayList<>();for(int i = 1;i<=nums.length;i++){if(!set.contains(i)){res.add(i);}}return res;}
}
这篇关于Leetcode第448题——找到所有数组中消失的数字的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!