C# || How To Return The Top K Frequent Words In Array Of Strings Using C#

The following is a module with functions which demonstrates how to get the top K frequent words in an array of strings using C#.


1. Top K Frequent – Problem Statement

Given an array of strings words and an integer k, return the k most frequent strings.

Return the answer sorted by the frequency from highest to lowest. Sort the words with the same frequency by their lexicographical order.

Example 1:


Input: words = ["i","love","leetcode","i","love","coding"], k = 2
Output: ["i","love"]
Explanation: "i" and "love" are the two most frequent words.
Note that "i" comes before "love" due to a lower alphabetical order.

Example 2:


Input: words = ["the","day","is","sunny","the","the","the","sunny","is","is"], k = 4
Output: ["the","is","sunny","day"]
Explanation: "the", "is", "sunny" and "day" are the four most frequent words, with the number of occurrence being 4, 3, 2 and 1 respectively.


2. Top K Frequent – Solution

The following are two solutions which demonstrates how to get the top K frequent words in an array of strings.

QUICK NOTES:
The highlighted lines are sections of interest to look out for.

The code is heavily commented, so no further insight is necessary. If you have any questions, feel free to leave a comment below.

Once compiled, you should get this as your output for the example cases:


["i","love"]
["the","is","sunny","day"]

Was this article helpful?
👍 YesNo

Leave a Reply