📜  C++ STL 中的配对队列示例(1)

📅  最后修改于: 2023-12-03 15:13:55.050000             🧑  作者: Mango

C++ STL 中的配对队列示例

概述

STL(Standard Template Library)是C++中的一个重要特性,是一组常用的数据结构和算法的集合,可以大大简化程序员的编程工作。STL中的配对队列(pair queue)是一种特殊的队列(queue),其中每个元素都由两个值组成。

代码实现

在C++中,STL中的配对队列可以使用标准库中的priority_queue实现。下面的代码示例演示了如何创建和使用配对队列:

#include <iostream>
#include <queue>
using namespace std;

int main() {
    // 创建一个配对队列,元素为一对整数
    priority_queue<pair<int, int>> pq;

    // 添加元素
    pq.push(make_pair(3, 5));
    pq.push(make_pair(1, 6));
    pq.push(make_pair(2, 4));

    // 遍历队列并输出每个元素的值
    while (!pq.empty()) {
        pair<int, int> p = pq.top();
        pq.pop();
        cout << p.first << " " << p.second << endl;
    }

    return 0;
}
运行结果

上述代码的运行结果如下所示:

3 5
2 4
1 6
解释说明

上述代码中,我们声明了一个名为pqpriority_queue对象,其中每个元素都是由两个整数组成的配对。使用push操作可以向队列中添加元素,而使用toppop操作则可以分别获取和弹出队列中的顶部(即最大值)元素。在上述代码中,我们添加了三个元素((3,5)(1,6)(2,4))到队列中,并按照其第一个元素的大小从大到小的顺序遍历队列并输出每个元素的值。

总结

通过上述示例,我们可以看到STL中的配对队列可以大大简化程序员的编程工作。如果你需要在自己的C++代码中使用配对队列,可以使用priority_queue实现,它包含了一些常用的操作,如向队列中添加元素、获取队列中的顶部元素等。