Search⌘ K
AI Features

Find Median from Data Stream

Explore how to build a class that dynamically stores integers and returns the median efficiently in constant time. Understand the role of heaps in maintaining data balance and practice implementing insert and findMedian operations to handle changing data streams effectively.

Statement

Design a data structure that stores a dynamically changing list of integers and can find the median in constant time, O(1)O(1), as the list grows. To do that, implement a class named MedianOfStream with the following functionality:

  • Constructor(): Initializes an instance of the class.

  • insertNum(int num): Adds a new integer num to the data structure.

  • findMedian(): Returns the median of all integers added so far.

Note: The median is the middle value in a sorted list of integers.

  • For an odd-sized list (e.g., ...