Heaps And Maps

Go to Problems

Why treemaps / heaps

In the trees topic, we explore what trees are.

We also explore that in a balanced BST, we can do the following :

        1. Insert in O(log n)
        2. Delete in O(log n)
        3. Search for an element in O(log n)
        4. Find Min in O(log n)
        5. Find Max in O(log n)
        6. Get all the elements in sorted order in O(n) - Inorder traversal.
        7. Find an element closest in value to x O(log n)

We also explored hashing in a previous topic along with hashmaps.
While hashmaps are really good for tracking whether an element is present or not, or the number of occurrences, it fails to answer :

        1. the min / max query in reasonable time
        2. Iterating through the element in sorted order in linear time
        3. Find an element closes to x in logarithmic time.

With that in mind, we explore treemap which helps us address all of those queries.
Treemaps are implemented internally using balanced trees ( They mostly use red black trees, but going into the implementation details of red black tree might be out of scope here ).

 

Serious about Learning Programming ?

Learn this and a lot more with Scaler Academy's industry vetted curriculum which covers Data Structures & Algorithms in depth.

Heaps And Maps Problems

Map
Problem Score Companies Time Status
Distinct Numbers in Window 600 39:07
LRU Cache 1000 75:55
lock
Topic Bonus
Bonus will be unlocked after solving min. 1 problem from each bucket