
Problem
Solution
Submissions
Top K Frequent Elements
Certification: Intermediate Level
Accuracy: 100%
Submissions: 1
Points: 10
Write a JavaScript program to find the k most frequent elements in an array. Given an integer array nums and an integer k, return the k most frequent elements. The answer can be returned in any order.
Example 1
- Input: nums = [1,1,1,2,2,3], k = 2
- Output: [1,2]
- Explanation:
- Count the frequency of each element in the array.
- Element 1 appears 3 times, element 2 appears 2 times, element 3 appears 1 time.
- We need the top 2 most frequent elements.
- Elements 1 and 2 are the most frequent, so we return [1,2].
- Count the frequency of each element in the array.
Example 2
- Input: nums = [1], k = 1
- Output: [1]
- Explanation:
- The array contains only one element.
- Element 1 appears 1 time.
- We need the top 1 most frequent element.
- The only element 1 is returned as [1].
- The array contains only one element.
Constraints
- 1 ≤ nums.length ≤ 10^5
- -10^4 ≤ nums[i] ≤ 10^4
- k is in the range [1, number of unique elements in array]
- Time Complexity: O(n log k)
- Space Complexity: O(n)
Editorial
My Submissions
All Solutions
| Lang | Status | Date | Code |
|---|---|---|---|
| You do not have any submissions for this problem. | |||
| User | Lang | Status | Date | Code |
|---|---|---|---|---|
| No submissions found. | ||||
Solution Hints
- Use a hash map to count the frequency of each element
- Use a min-heap to keep track of the k most frequent elements
- Iterate through the frequency map and maintain a heap of size k
- If heap size exceeds k, remove the least frequent element
- Extract all elements from the heap to get the final result