day 07(三)队列

86 阅读1分钟
  1. 队列
    1. 特点:先进先出(FIFO)
      1. 单调队列
        1. 单调队列的基本思想和操作:
        • 如果队列为空,将当前元素入队。

        • 如果当前元素大于等于队列尾部的元素(保持单调递增),将队尾元素出队,直到队列为空或当前元素小于队尾元素。出队的元素不可能成为窗口中的最大值,因为后面的元素更大且在更后面,因此可以将其丢弃。

        • 将当前元素入队,保持单调性。

        • 如果队列头部的元素已经超出了窗口的范围(即下标不在窗口内),将队头元素出队。

队列的简单实现:

code.png

队列的简单例子:

code.png