STL之stack

简介: 一、stack(栈)   栈:LIFO 后进先出;   首先要指出的是,stack并非和STL的其他类模板是独立的容器,stack是自适应容器(容器适配器)   stack   s;   stack       s;   stack           s;   STL中实现的stack方法:   s,empty();  s.

一、stack(栈)

  栈:LIFO 后进先出;

  首先要指出的是,stack并非和STL的其他类模板是独立的容器,stack是自适应容器(容器适配器)

  stack<int, deque<int>>   s;

  stack<int, vector<int>>       s;

  stack<int, list<int>>           s;

  STL中实现的stack方法:

  s,empty();  s.size();  

  s.pop();    //弹出一个元素; 

  s.top();    //查看栈顶元素;   

  s.push(item)  //压入一个元素; 

示例代码如下:

 1 #include <iostream>
 2 #include <stack>
 3 #include <vector>
 4 #include <list>
 5 
 6 using namespace std;
 7 
 8 int main()
 9 {
10     //stack是自适应容器
11     stack<int, deque<int> >  a;
12     stack<int, vector<int> > b;
13     stack<int, list<int> >  c;
14     
15     //默认于a一样是用deque做stack
16     stack<int>              d;
17     d.push(25);
18     d.push(10);
19     d.push(1);
20     d.push(5);
21 
22     std::cout<< d.size() << std::endl;
23     int size = d.size();
24     for(int i=0;i<size;++i){
25         std::cout << "====="<< i << std::endl;
26         std::cout<<d.top() << std::endl;    //查看数据并返回
27         //std::cout<<d.pop() << std::endl;  //Error,查看数据并返回
28         d.pop();    //弹出数据,但不返回
29     }
30 }

  内容待补充.......

 

相关文章
|
6月前
|
容器
STL_stack
STL_stack
30 1
|
4月前
|
设计模式 算法 Java
【c++】STL之stack和queue详解
【c++】STL之stack和queue详解
48 1
|
6月前
|
编译器 C++ 容器
【STL】stack与queue的底层原理及其实现
【STL】stack与queue的底层原理及其实现
|
6月前
|
C++ 容器
【C++初阶】STL详解(六)Stack与Queue的介绍与使用
【C++初阶】STL详解(六)Stack与Queue的介绍与使用
58 1
|
6月前
|
存储 C++ 容器
【C++初阶】STL详解(七)Stack与Queue的模拟实现
【C++初阶】STL详解(七)Stack与Queue的模拟实现
31 1
|
存储 设计模式 C++
C++ STL stack & queue
stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作。
|
6月前
|
存储 C++ 容器
STL--stack、queue实现
STL--stack、queue实现
|
6月前
|
算法 容器
C++13-STL模板-栈stack
C++13-STL模板-栈stack
|
容器
STL-stack
STL-stack
44 0
|
设计模式 C++ 容器
C++【STL】之stack和queue学习
C++ STL stack和queue常用接口和模拟实现详细讲解,干货满满!
105 0
C++【STL】之stack和queue学习