# Top K Frequent Elements

```python
class Solution:
    def topKFrequent(self, nums, k):
        """
        :type nums: List[int]
        :type k: int
        :rtype: List[int]
        """
        """
        Counter is a subclass of dictionary
        Time Complexity:
        construct: O(n)
        the operator of most_common uses heapq to obtain top k value O(1)
        zip: O(n)
        """
        counter = collections.Counter(nums)
        res = list(zip(*counter.most_common(k)))[0]
        return list(res)
```
