DEV Community

Jayaprasanna Roddam
Jayaprasanna Roddam

Posted on

DSA: Heap - interview preparation questions

1. Basic Heap Operations
·      Implement a Min Heap
·      Implement a Max Heap
·      Insert an Element into a Min Heap
·      Insert an Element into a Max Heap
·      Delete the Minimum Element from a Min Heap
·      Delete the Maximum Element from a Max Heap
·      Peek the Minimum Element in a Min Heap
·      Peek the Maximum Element in a Max Heap
·      Heapify an Array (Build a Heap)
·      Convert an Array into a Min Heap or Max Heap
 
 2. Heap Construction and Maintenance
·      Convert a Min Heap to a Max Heap
·      Convert a Max Heap to a Min Heap
·      Implement Heap Sort (Ascending and Descending Order)
·      Decrease Key in a Min Heap
·      Increase Key in a Max Heap
·      Find the Kth Largest Element in an Array (Using a Max Heap)
·      Find the Kth Smallest Element in an Array (Using a Min Heap)
·      Merge K Sorted Lists (Using a Min Heap)
·      Merge K Sorted Arrays (Using a Min Heap)
·      K Closest Points to the Origin (Using a Min Heap)
 
 3. Heap-Based Problem Solving
·      Top K Frequent Elements (Using a Min Heap)
·      Find Median of a Stream of Integers (Using Two Heaps)
·      Sliding Window Maximum (Using a Double-Ended Queue or Heap)
·      Kth Largest Element in a Stream (Using a Min Heap)
·      Kth Smallest Element in a Stream (Using a Max Heap)
·      Shortest Path in a Weighted Graph (Dijkstra’s Algorithm with a Min Heap)
·      Find the Range of a Given Subarray with Minimum Sum (Using a Min Heap)
·      Find the Median of a Set of Numbers (Using Two Heaps)
·      Longest Subarray with Sum Less Than K (Using a Min Heap)
·      Reconstruct a Heap from a Given Set of Values
 
 4. Advanced Heap Problems
·      Find All Valid Combinations with Sum Equal to Target (Using a Min Heap)
·      Implement a Priority Queue Using Heaps
·      Find the Maximum Sum of a Subarray of Size K (Using a Max Heap)
·      Find the Maximum Sum of k Non-Overlapping Subarrays (Using a Max Heap)
·      Heap-Based Approach to Solve Job Scheduling Problems
·      Implement a Median Maintenance Algorithm (Using Two Heaps)
·      Find Top K Elements in a Matrix (Using a Min Heap)
·      Sort K-Sorted Array (Using a Min Heap)
·      Rearrange Characters in a String so No Two Adjacent Characters are the Same (Using a Max Heap)
·      Implement a Heap-Based Algorithm to Solve the Traveling Salesman Problem (Approximate Solution)
 
 5. Heap Applications in Graph Algorithms
·      Implement Prim’s Algorithm for Minimum Spanning Tree (Using a Min Heap)
·      Implement Kruskal’s Algorithm for Minimum Spanning Tree (Using Union-Find and Min Heap)
·      Find the Shortest Path in a Graph with Non-Negative Weights (Using Dijkstra’s Algorithm with a Min Heap)
·      Find the Longest Path in a Graph with Positive Weights (Using a Max Heap)
·      Compute the Minimum Cost Path in a Weighted Grid (Using a Min Heap)
·      Find All Pair Shortest Paths (Using Floyd-Warshall with Heap Optimization)
·      Implement A* Search Algorithm (Using a Min Heap)
·      Compute the Shortest Path Tree from a Source Node (Using Dijkstra’s Algorithm with a Min Heap)
·      Find the Most Frequent Path in a Graph (Using a Max Heap)
·      Compute the Minimum Cost to Connect All Nodes (Using Prim’s Algorithm with a Min Heap)
 

Top comments (0)