[模板]手写双端队列(或普通队列)

STL依赖症早晚得治.

int q[20000010], l = 1e7, r = 1e7;        // 创建队列(数组大小为2e7),元素为int,int可以改为任意的ElementType
q[l] = s;                                // 向队列中加入第一个元素
l <= r                                    // (等价于,下同)q.empty()
l++;                                    // q.pop_front()
r--;                                    // q.pop_back()
q[l]                                    // q.front()
q[r]                                    // q.back()
q[--l] = x                                // q.push_front(x), 前提条件队列不能未加入过元素
q[++r] = x                                // q.push_back(x), 前提条件同上

 

posted @ 2021-05-21 19:27  goverclock  阅读(203)  评论(0编辑  收藏  举报