What is a monotonic queue and how does it solve sliding window max in O(n)? | LetsGit.IT