c ++数据结构仍然按值排序&运行FIFO

时间:2012-04-21 21:07:09

标签: c++ data-structures stack heap priority-queue

我正在寻找一种执行快速排序插入的数据结构,并基于FIFO进行操作。

我想要实现的是一个固定大小的数据结构来保存一系列值。在迭代的每个新步骤中,我希望能够有效地找到最小值或最大值(因此我希望数据结构始终被排序),并且在请求插入新元素时,最旧的元素将自动生成(或至少能够有效地)弹出/丢弃。

所以我想我正在寻找某种FIFO优先级队列。

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:5)

为什么不同时将std :: set或multiset和常规FIFO队列(如std :: queue of queue)放入该集合中?在每次插入时,检查队列是否大于最大大小,然后从队列和集合中删除前面的元素。