2206. Divide Array Into Equal Pairs

Difficulty:
Related Topics:
Similar Questions:

Problem

You are given an integer array nums consisting of 2 * n integers.

You need to divide nums into n pairs such that:

Return true if nums can be divided into n pairs, otherwise return false.

  Example 1:

Input: nums = [3,2,3,2,2,2]
Output: true
Explanation: 
There are 6 elements in nums, so they should be divided into 6 / 2 = 3 pairs.
If nums is divided into the pairs (2, 2), (3, 3), and (2, 2), it will satisfy all the conditions.

Example 2:

Input: nums = [1,2,3,4]
Output: false
Explanation: 
There is no way to divide nums into 4 / 2 = 2 pairs such that the pairs satisfy every condition.

  Constraints:

Solution (Java)

class Solution {
    public boolean divideArray(int[] nums) {
        int[] freq = new int[501];
        for (int num : nums) {
            ++freq[num];
        }
        for (int f : freq) {
            if (f % 2 != 0) {
                return false;
            }
        }
        return true;
    }
}

Explain:

nope.

Complexity: