ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

STL--容器stack、queue、priority_queue

2022-04-03 13:33:11  阅读:171  来源: 互联网

标签:priority STL 元素 stk queue stack empty 赋值


STL--容器stack、queue、priority_queue

 

一、栈(stack)  

使用前要添加头文件#include <stack>

1.构造:
stack<T> stk; //T为数据类型,这里为一个模板类型

2.赋值操作:
stack<T>stk(s); //用s赋值给stk

3.数据存取:
stk.push(elem); //将elem 压入栈stk中
stk.pop(); //栈顶元素出栈
stk.top(); // 整体代表栈顶元素的值

4.大小操作:
stk.empty(); //判断是否为空,返回true or false
stk.size(); //整体值为栈中元素的个数

5.清空操作:
stack<T> empty;
swap(empty, stk);
//
1、相当于交换了stk与一个空临时stack再结束,在堆空间本质还是一个一个删除
还有一种循环pop判空法,但是前者更快
再或者运算符重载赋值空栈给stk。

 

 

二、栈和队列----队列

构造:
queue<T>q;
赋值:
queue<T>q1(q);
数据存取:
q.pop() //删除队首元素但不返回其值
q.front() //整体值为队头元素的值
q.push(data) //将data压入队尾
q.back() //返回队列尾部元素的值但不删除
大小操作:
q.empty() //是否为空
q.size() //元素个数
清空:
queue<int> empty;
swap(empty, q); //同上

标签:priority,STL,元素,stk,queue,stack,empty,赋值
来源: https://www.cnblogs.com/yztbky/p/16065410.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有