STL容器之stack
2017-02-25 21:19
211 查看
一,基本概念
stack是一种后进先出的数据结构,它只有一个出口,它允许新添加元素,移除元素,取得顶端元素。但除了最顶端外,没有任何其他方法可以存取其中的其他元素,也就是,stack不允许随机访问。
二,具体的使用
push:将元素插入栈
pop:将元素弹出(元素必须符合后进先出的原则,且stack不提供走访功能,也不提供迭代器)
三,其中的成员函数
empty()堆栈为空则返回为真
pop()移除栈顶元素(不会返回栈顶元素的值)
push()在站定添加元素
size()返回栈中元素的数目
top()返回栈顶元素 //与其他的容器不同的函数
四,用法的代码举例
举例1,
#include<cstdio>
#include<stack>
#include<iostream>
using namespace std;
int main()
{
stack<string> s;
s.push("first");
s.push("second");
s.push("third");
s.push("fourth");
cout<<"s.size()="<<s.size()<<"\n";/输出s.size()=4;
while(!s.empty())
{
cout<<"s.top()="<<s.top()<<"\n";
s.pop();//不能改变或是减少(删除的作用)
}
cout<<"s.size()="<<s.size()<<"\n";
}
举例2,
stack是一种后进先出的数据结构,它只有一个出口,它允许新添加元素,移除元素,取得顶端元素。但除了最顶端外,没有任何其他方法可以存取其中的其他元素,也就是,stack不允许随机访问。
二,具体的使用
push:将元素插入栈
pop:将元素弹出(元素必须符合后进先出的原则,且stack不提供走访功能,也不提供迭代器)
三,其中的成员函数
empty()堆栈为空则返回为真
pop()移除栈顶元素(不会返回栈顶元素的值)
push()在站定添加元素
size()返回栈中元素的数目
top()返回栈顶元素 //与其他的容器不同的函数
四,用法的代码举例
举例1,
#include<cstdio>
#include<stack>
#include<iostream>
using namespace std;
int main()
{
stack<string> s;
s.push("first");
s.push("second");
s.push("third");
s.push("fourth");
cout<<"s.size()="<<s.size()<<"\n";/输出s.size()=4;
while(!s.empty())
{
cout<<"s.top()="<<s.top()<<"\n";
s.pop();//不能改变或是减少(删除的作用)
}
cout<<"s.size()="<<s.size()<<"\n";
}
举例2,
相关文章推荐
- C++之STL(十一):容器适配器(stack、 queue 、priority_queue)源码浅析与使用示例
- STL容器适配器-栈 stack
- STL容器使用DEMO-stack
- STL容器之stack
- STL讲解 容器(map,set,vector,stack,queue)
- STL笔记(3)-deque,queue,stack,list容器
- STL源码剖析 容器 stl_stack.h
- STL学习——STL中的序列式容器及适配器总结(vector、list、deque、stack、queue)
- STL源码解析-04序列容器-04queue&stack
- STL之容器适配器:stack,queue , priority_queue
- STL序列式容器之堆栈——stack
- C++(STL)考点--容器(stack)
- UVa - 12096 The SetStack Computer(STL容器综合,强推!)
- STL容器总结之stack和queue
- 利用STL容器stack实现一个简单的计算器
- STL有6种序列容器(vector, list, deque, queue, priority_deque, stack)
- STL之容器适配器stack的实现框架
- STL学习笔记-stack容器(栈)
- STL学习(四)stack容器学习
- 【STL】序列式容器--stack和queue