Dropbox Interview Question for Software Engineers
- 3of 3 votes
Design a hit counter which counts the number of hits received in the past 5 minutes.- aonecoding January 18, 2018 in United States
Each function accepts a timestamp parameter (in seconds granularity) and you may assume that calls are being made to the system in chronological order (ie, the timestamp is monotonically increasing). You may assume that the earliest timestamp starts at 1.
HitCounter counter = new HitCounter();
// hit at timestamp 1.
// hit at timestamp 2.
// hit at timestamp 3.
// get hits at timestamp 4, should return 3.
// hit at timestamp 300.
// get hits at timestamp 300, should return 4.
// get hits at timestamp 301, should return 3.
Due to latency, several hits arrive roughly at the same time and the order of timestamps is not guaranteed chronological.
Follow up 2:
What if the number of hits per second could be very large? Does your design scale?
| Report Duplicate | Flag | PURGE
Dropbox Software Engineer Algorithm
Interview Type: Written Test
Open Chat in New Window