码迷,mamicode.com
首页 > 其他好文 > 详细

STL之stack

时间:2015-05-16 01:21:20      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:

一、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 }

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

 

STL之stack

标签:

原文地址:http://www.cnblogs.com/chris-cp/p/4507231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!