目录
1.deque
1.1介绍
双端队列是一种可以在两端进行插入和删除操作的数据结构。
#include<deque>//添加头文件
deque<int> q;//初始化定义
1.2 方法函数
请注意,双端队列的常数项相对较大。
函数 | 含义 |
---|---|
Q.push_back(x)或Q.push_front(x) | 在队首存入x或在队尾存入x |
Q.front()或Q.back() | 返回队首或队尾 |
Q.pop_front()或Q.pop_back() | 删除队首元素或队尾元素 |
Q.erase(iterator it) | 删除双端队列中的某一个元素 |
Q.erase(iterator first,iterator last) | 删除双端队列中[first,last) 中的元素 |
Q>empty() | 判断deque是否空 |
Q.size() | 返回deque的元素数量 |
Q.clear() | 清空deque |
1.3排序
双端队列在排序方面的应用确实并不常见,许多人可能会认为它在这方面并无太大的实际用途。然而,尽管使用其他标准模板库(STL)的数据结构也能达到相同的效果,但双端队列依然有其独特的价值和应用场景。
//从小到大
sort(Q.begin(), Q.end())
//从大到小排序
sort(Q.begin(), Q.end(), greater<int>());//deque里面的类型需要是int型
大家给点支持吧QwQ求求了....