一、#include < stack >

include < stack >为C++ STL栈stack的头文件,是STL中实现的一个后进先出的容器。它的主要用法如下:

  • stack< typename > name ; //stack的定义,typename可以任意基本数据类型或容器:
  • S.empty(); //栈空返回true 否则false
  • int a=S.size(); //返回栈中元素的个数
  • S.push(x);  //将x入栈
  • S.pop(); //将栈顶元素出栈
  • int b=S.top(); //返回栈顶元素

程序示例:

#include<iostream>
#include<stack>
using namespace std;

int main()
{
	stack<int> S;
	for(int i=1;i<=5;i++){
		S.push(i);		//push(i)将i压入栈 
	}
	cout<<"栈顶元素为:"<<S.top()<<"  栈中元素个数为:"<<S.size()<<endl;
	S.pop();
	cout<<"栈顶元素为:"<<S.top()<<"  栈中元素个数为:"<<S.size()<<endl;
	return 0;

}

运行结果:

二、#include < queue >

include < queue >为C++ STL队列queue的头文件,是STL中实现的一个先进先出的容器。它的主要用法如下:

  • queue< typename > name ; //queue的定义,typename可以任意基本数据类型或容器:
  • Q.empty(); //队列空返回true 否则false
  • int a=Q.size(); //返回队列中元素的个数
  • Q.push(x);  //将x 接到队列的末端,进行入队操作。
  • Q.pop(); //弹出队列的第一个元素,注意并不会返回被弹出元素的值。
  • int a=Q.front() //访问队首元素,即最早被压入队列的元素。
  • int b= Q.back() //访问队尾元素,即最后被压入队列的元素。

程序示例:

#include<iostream>
#include<queue>
using namespace std;

int main()
{
	queue<int> Q;
	for(int i=1;i<=5;i++){
		Q.push(i);		//push(i)将i压入队列 
	}
	cout<<"队首元素为:"<<Q.front()<<"  队尾元素为:"<<Q.back()<<"  栈中元素个数为:"<<Q.size()<<endl;
	Q.pop();Q.pop();
	cout<<"队首元素为:"<<Q.front()<<"  队尾元素为:"<<Q.back()<<"  栈中元素个数为:"<<Q.size()<<endl;
	return 0;

}

运行结果:

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐