Swiggy Interview Question
SDE-2sCountry: India
Interview Type: In-Person
Sliding window concept:
Use double ended queue and maintain these steps.
1. Keep this in sorted order(Descending order).
2. Whenever new element comes then check from tail if new element is greater than tail element of deque then pop tail element and pushed new element and keep poping element until you find greated element in deque from tail.
3. Again Keep poping element from front of deque if front element is not within the time frame x.
4. To get the costlier order, left element of deque is your required answer.
enter all orders in max heap sorted by costs. when need to query for costliest order check the timestamp of root node if less than X mins past then it is the costliest order if timestamp is more than X mins past then keep popping elements until timestamp is with x mins return the cost value of the top node.
- Mukul June 14, 2019