百度采购网官方网站镇江优化推广
数组中重复的数据
描述 :
给你一个长度为 n
的整数数组 nums
,其中 nums
的所有整数都在范围 [1, n]
内,且每个整数出现 一次 或 两次 。请你找出所有出现 两次 的整数,并以数组形式返回。
你必须设计并实现一个时间复杂度为 O(n)
且仅使用常量额外空间的算法解决此问题。
题目 :
LeetCode 442. 数组中重复的数据 :
442. 数组中重复的数据
分析 :
这道题还是很简单的,利用集合简单实现就可以了 .
解析 :
class Solution {public List<Integer> findDuplicates(int[] nums) {Set<Integer> set = new HashSet<>();List<Integer> list = new ArrayList<>();for(int i = 0;i < nums.length;i++){if(set.contains(nums[i])){list.add(nums[i]);}set.add(nums[i]);}return list;}
}