Given a non-empty array of integers
arr, write a program to return the
k most frequent elements in the form of an array.
- You may assume
kis always valid, 1 ≤ k ≤ number of unique elements.
- Your algorithm's time complexity must be better than O(n log n), where n is the array's size.
- The elements of the resultant array may be in any order.
Input: arr = [3, 0, 1, 0], k = 1 Output:  Explanation: 0 is the top-most frequent element having frequency of 2.
Input: arr = [1, 2], k = 2 Output: [1, 2] Explanation: 1 and 2 are the top 2 frequent elements having frequency of 1.