行业知识
C++初阶:容器适配器介绍、stack和queue常用接口详解及模拟实现
2026-11-07 18:25:52
来源:互联网转载
介���完了list类的相关内容后:C++初阶:适合新手的手撕list(模拟实现list)
接下来进入新的篇章,stack和queue的介绍以及模拟:
文章目录
- 1.stack的初步介绍
- 2.stack的使用
- 3.queue的初步介绍
- 4.queue的使用
- 5.容器适配器
- 5.1含义
- 5.2STL标准库中stack和queue的底层结构
- 6.模拟stack和queue
- 文件规划和一览
- 6.1模拟stack(stack.h)
- 6.2模拟queue(queue.h)
1.stack的初步介绍
-
stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作。
-
stack是作为容器适配器被实现的,容器适配器即是对特定类封装作为其底层的容器,并提供一组特定的成员函数来访问其元素,将特定类作为其底层的,元素特定容器的尾部(即栈顶)被压入和弹出。
-
stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类,这些容器类应该支持以下
操作:
-
empty:判空操作
-
back:获取尾部元素操作
-
push_back:尾部插入元素操作
-
pop_back:尾部删除元素操作
- 标准容器vector、deque、list均符合这些需求,默认情况下,如果没有为stack指定特定的底层容器,默认情况下使用deque。
2.stack的使用
函数 说明 stack() 构造空的栈 empty() 检测stack是否为空 size() 返回stack中元素的个数 top() 返回栈顶元素的引用 push() 将元素val压入stack中 pop() 将stack中尾部的元素弹出 #include#includeusing namespace std;int main(){stack st;//一个空栈st.push(1);st.push(2);st.push(3);//push进去3个while (!st.empty())//当st不空进循环{cout
-
上一篇:基于决策树实现葡萄酒分类
下一篇:pop3服务器怎么写?