Search⌘ K
AI Features

Top K Frequent Elements

Explore how to identify the top K most frequent elements in an integer array by applying heaps and frequency counting methods. This lesson helps you develop efficient solutions for common interview patterns by understanding constraints, reasoning about problem statements, and implementing your approach in practice.

Statement

Given an array of integers, arr, and an integer, k, return the kk most frequent elements.

Note: You can return the answer in any order.

Constraints:

  • 11 \leq arr.length \leq 10310^{3}
  • 10410^{-4} \leq arr[i] \leq 10410^{4}
  • 1 \leq k \leq number of unique elements in an array.
  • It is guaranteed that the answer is unique.

Examples

Understand the problem

Let’s take a moment to make sure you’ve correctly understood the problem. The quiz below helps you check if you’re solving the correct problem:

Top K Frequent Elements

1.

What is the output if the following inputs are given?

arr = [1, 1, 2, 4, 5, 5]

k = 2

A.

[1]

B.

[5]

C.

[1, 5]

D.

[1, 2]


1 / 2

Figure it out!

We have a game for you to play. Rearrange the logical building blocks to develop a clearer understanding of how to solve this problem.

Sequence - Vertical
Drag and drop the cards to rearrange them in the correct sequence.

1
2
3
4
5

Try it yourself

Implement your solution in the following coding playground:

C++
usercode > main.cpp
vector<int> TopKFrequent(vector<int> lists, int k)
{
// Replace this placeholder return statement with your code
return {};
}
Top K Frequent Elements