Data Structures19 sections · 729 units
Open in Course

Monotonic Deque Visualization

Step by step

Array: [1,3,1,3,5][1, 3, -1, -3, 5], k=3k = 3. Deque stores indices. i=0i=0, val=11: deque empty, push 00. Deque: [0][0]

i=1i=1, val=33: 3>13 > 1, pop 00, push 11.

Deque: [1][1]

i=2i=2, val=1-1: 1<3-1 < 3, push 22. Deque: [1,2][1, 2]. Window complete. Max = nums[1]=3nums[1] = 3.

i=3i=3, val=3-3: 3<1-3 < -1, push 33. Deque: [1,2,3][1, 2, 3].

Front 11 still in window. Max = 33.

i=4i=4, val=55: 5>3,1,35 > -3, -1, 3, pop all, push 44. Front 11 outside window anyway. Deque: [4][4].

Max = 55. The front always gives the maximum.