Running median of a stream
Numbers arrive one at a time; after each, report the median of everything seen so far. Use two heaps.
Follow-ups: the values come from a small range (use counts instead of heaps); report the k-th smallest instead of the median; accept an approximate median when the stream is too large to keep in memory.
No answer yet. Write the first one; the best answer gets endorsed.
