跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 卖家故事 > 【C++航海王:追寻罗杰的编程之路】queue

【C++航海王:追寻罗杰的编程之路】queue

时间:2024-03-27 08:21:05 来源:网络cs 作者:焦糖 栏目:卖家故事 阅读:

标签: 追寻  航海 
阅读本书更多章节>>>>

目录

1 -> queue的介绍和使用

1.1 -> queue的介绍

1.2 -> queue的使用

1.3 -> queue的模拟实现


1 -> queue的介绍和使用

1.1 -> queue的介绍

queue的文档介绍

1. 队列是一种容器适配器,专门用于在FIFO(先进先出)上下文中操作,其中从容器一端插入元素,另一端提取元素。

2. 队列作为容器适配器实现,容器适配器即将特定容器类封装作为其底层容器类,queue提供一组特定的成员函数来访问其元素。元素从队尾入队列,从队头出队列。

3. 底层容器可以是标准容器类模板之一,也可以是其他专门设计的容器类,该底层容器应至少支持以下操作:

empty: 检测队列是否为空size: 返回队列中有效元素的个数、front: 返回队头元素的引用back: 返回队尾元素的引用push_back: 在队列尾部入队列pop_front: 在队列头部出队列

4. 标准容器类deque和list满足了这些要求。默认情况下,如果没有为deque实例化指定容器类,则使用标准容器deque。

1.2 -> queue的使用

函数声明接口说明
queue()构造空的队列
empty()检测队列是否为空,是返回true,否则返回false
size()返回队列中有效元素个数
front()返回队头元素的引用
back()返回队尾元素的引用
push()在队尾将元素val入队列
pop()将队头元素出队列

相关题目:

用队列实现栈

class MyStack {public:    queue<int> q1;    queue<int> q2;    MyStack()     {    }        void push(int x)     {        q2.push(x);        while (!q1.empty())        {            q2.push(q1.front());            q1.pop();        }        swap(q1, q2);    }        int pop()     {        int x = q1.front();        q1.pop();        return x;    }        int top()     {        int x = q1.front();        return x;    }        bool empty()     {        return q1.empty();    }};

1.3 -> queue的模拟实现

因为queue的接口中存在头删和尾插,因此使用vector来封装效率太低,故可以借助list来模拟实现queue。

#define  _CRT_SECURE_NO_WARNINGS 1#include <iostream>#include <list>using namespace std;namespace fyd{template<class T>class Queue{public:Queue(){}void push(const T& x){_c.push_back(x);}void pop(){_c.pop_front();}T& back(){return _c.back();}const T& back()const{return _c.back();}T& front(){return _c.front();}const T& front()const{return _c.front();}size_t size()const{return _c.size();}bool empty()const{return _c.empty();}private:list<T> _c;};}

感谢各位大佬支持!!!

互三啦!!!

阅读本书更多章节>>>>

本文链接:https://www.kjpai.cn/gushi/2024-03-27/149271.html,文章来源:网络cs,作者:焦糖,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

文章评论