C++中栈和队列的基本使用方法

在算法中栈和队列的使用的频繁的,在学习算法的过程中栈、队列的使用方法我们一定要掌握。
在C++中栈和队列已经被封装好了,我们可以直接通过以下步骤调用栈和队列:

1.相关头文件

包含栈头文件:#include< stack >
包含队列头文件:#include< queue >

2.相关定义方式

定义栈: stack< 类型 > stk;
定义队列: queue< 类型 > q;
(ps:类型为int、char等)

3.相关操作

栈提供了如下的操作:
(1)stk.empty() :如果栈为空返回true,否则返回false。
(2)stk.size():返回栈中元素的个数。
(3)stk.pop():删除栈顶元素,但不返回其值。
(4)stk.top():返回栈顶元素,但不删除该元素。
(5)stk.push():在栈顶压入新元素。

//栈代码
#include<bits/stdc++.h>
#include<stack>
using namespace std;

int main()
{
	stack<int>stk;
	cout << "栈的相关操作" << endl; 
	cout << "栈是否为空:" << stk.empty() << endl;
	stk.push(100);
	stk.push(50); 
	cout << "将先压入栈100、后压入栈50后栈顶元素:" <<
	stk.top() << endl;
	cout << "栈的大小为:" << stk.size() << endl; 
	stk.pop();
	cout << "弹栈一次后,栈顶元素为:" << stk.top() << endl;
	cout << "栈的大小为:" << stk.size() << endl; 
	
	return 0;
} 

栈代码实现

队列提供了如下操作:
(1)q.empty():如果队列为空返回true,否则返回false。
(2)q.size():返回队列中的元素个数。
(3)q.pop():删除队列元素但不返回其值。
(4)q.front():返回队首元素的值,但不删除该元素。
(5)q.push():在队尾压入新元素。
(6)q.back():返回队列尾元素的值,但不删除该元素。

//队列代码
#include<bits/stdc++.h>
#include<queue>
using namespace std;

int main()
{
	queue<int>q;
	cout << "队列的相关操作" << endl; 
	cout << "队列是否为空:" << q.empty() << endl;
	q.push(100);
	q.push(50); 
	cout << "将先将100入队、后将50入队后队首元素:" <<
	q.front() << "  队尾元素:" << q.back() << endl;
	cout << "队列的大小:" << q.size() << endl; 
	q.pop();
	cout << "出队一次后,队首元素:" << q.front() <<
	"  队尾元素:" << q.back() << endl;
	cout << "队列的大小:" << q.size() << endl; 
	
	return 0;
}

队列代码实现
参考资料:博客园——C++中栈和队列的使用方法
(https://www.cnblogs.com/qujunhui/p/10360628.html)

如果觉得该文章对你有用的话,留给赞呗!

感谢关注~

被代码吃了

发布了10 篇原创文章 · 获赞 9 · 访问量 429

猜你喜欢

转载自blog.csdn.net/Zhengyangxinn/article/details/104512449