ID | Title | Difficulty | |
---|---|---|---|
Loading... |
442. Find All Duplicates in an Array
Medium
LeetCode
Array, Hash Table
Problem
Given an integer array nums of length n where all the integers of nums are in the range [1, n] and each integer appears once or twice, return an array of all the integers that appears twice.
Example 1:
Input: nums = [4,3,2,7,8,2,3,1]
Output: [2,3]
Example 2:
Input: nums = [1,1,2]
Output: [1]
Example 3:
Input: nums = [1]
Output: []
Code
class Solution {
public List<Integer> findDuplicates(int[] nums) {
List<Integer> res = new ArrayList<>();
for(int i = 0; i < nums.length; i++) {
int index = Math.abs(nums[i]) - 1;
if(nums[index] < 0) {
res.add(index + 1);
} else {
nums[index] = -nums[index];
}
}
return res;
}
}
按 <- 键看上一题!
441. Arranging Coins
按 -> 键看下一题!
443. String Compression