常见的队列

     队列是系统中广泛使用的流行数据结构。上图显示了我们经常使用的4种不同类型的队列。

常见的队列

  • 简单的FIFO队列

     简单队列遵循 FIFO(先进先出)。新元素插入到队列的尾部,元素从队列的头部移除。如果我们想在收到付款响应时向用户发送电子邮件通知,我们可以使用 FIFO 队列。电子邮件将以与付款响应相同的顺序发送。

  • 环形队列

     环形队列也称为环形缓冲区或环形缓冲区。它的最后一个元素链接到第一个元素。插入发生在队列的前端,删除发生在队列的末尾。

     一个著名的实现是LMAX的低延迟环形缓冲区。交易组件通过环形缓冲区相互通信。这是在内存中实现的,速度非常快。

  • 优先队列

     优先级队列中的元素具有预定义的优先级。我们从队列中取出具有最高(或最低)优先级的元素。在幕后,它使用最大堆或最小堆实现,其中具有最大或最低优先级的元素位于堆的根。

     一个典型的用例是将病情最严重的患者分配到急诊室,而将其他患者分配到普通病房。

  • Deque

     Deque 也称为双端队列。插入和删除可以在头部和尾部同时发生。Deque 支持 FIFO 和 LIFO(后进先出),因此我们可以使用它来实现堆栈数据结构。

打赏
  • Copyrights © 2023-2024 杨海波
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信