STL常用容器使用方法
在程序头部使用#include<stack>来引入STL的stack容器,然后使用stack<int> s语句来声明一个管理整型数据的容器s。
stack常用成员函数:
push(x) 将元素x压入栈中
pop() 将栈顶元素取出并删除
top() 将栈顶元素取出但不删除
size() 返回栈内元素数量
empty() 判断栈是否为空
在程序头部使用#include<queue>来引入STL的queue容器,然后使用queue<int> q语句来声明一个管理整型数据的容器q。
queue常用成员函数:
push(x) 将元素x加入队列中
pop() 将队首元素取出并删除
front() 将队首元素取出但不删除
size() 返回队列的元素数量
empty() 判断队列是否为空
在程序头部使用#include<vector>来引入STL的vector容器,然后使用vector<int> v语句来声明一个管理整型数据的容器v。
vector常用成员函数:
size() 返回向量的结点数量
begin() 返回指向向量开头的迭代器
end() 返回指向向量末尾的迭代器
push_back(x) 在向量末尾添加结点x
pop_back(x) 删除向量末尾的结点x
insert(p,x) 在第p个位置插入结点x
erase(p) 删除第p个位置的结点
clear() 清空向量中所有结点
在程序头部使用#include<list>来引入STL的list容器,然后使用list<int> l语句来声明一个管理整型数据的双向链表容器l。
list常用成员函数:
size() 返回链表的结点数量
begin() 返回指向链表开头的迭代器
end() 返回指向链表末尾的迭代器
push_front(x) 在链表开头添加结点x
push_back(x) 在链表末尾添加结点x
pop_front(x) 删除链表开头的结点x
pop_back(x) 删除链表末尾的结点x
insert(p,x) 在第p个位置插入结点x
erase(p) 删除第p个位置的结点
clear() 清空链表中所有结点
STL常用容器使用方法的更多相关文章
- STL常用结构与方法简明总结
C++常用的数据结构 序列式容器 vector(向量.有序数列),list(双向链表),deque(双端队列) 适配器容器 stack(栈),queue(队列) 关联式容器 map(映射.键值对二叉树 ...
- C++ STL常用容器浅析
首先要理解什么是容器,在C++中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对象的指针,这种对象类型就叫做容器.简单来说 容器就是包含其他类的对象们的对象,当然这种(容器) ...
- 【Example】C++ STL 常用容器概述
前排提醒: 由于 Microsoft Docs 全是机翻.所以本文表格是我人脑补翻+审校. 如果有纰漏.模糊及时评论反馈. 序列式容器 序列容器是指在逻辑上以线性排列方式存储给定类型元素的容器. 这些 ...
- C++中STL常用容器的优点和缺点
我们常用到的STL容器有vector.list.deque.map.multimap.set和multiset,它们究竟有何区别,各自的优缺点是什么,为了更好的扬长避短,提高程序性能,在使用之前需要我 ...
- 【C++】STL常用容器总结之五:双端队列deque
6.双端队列deque 所谓的deque是”double ended queue”的缩写,双端队列不论在尾部或头部插入元素,都十分迅速.而在中间插入元素则会比较费时,因为必须移动中间其他的元素.双端队 ...
- c++ STL 常用容器元素类型相关限制 指针 引用
c++ 的 STL 中主要有 vector , list, map, set , multimap,multiset 这些容器完全支持使用内置类型和指针(指针注意内存泄露问题). 就是说乱用智能指针 ...
- C++中STL常用容器的区别(转)
我们常用到的STL容器有vector.list.deque.map.multimap.set和multiset,它们究竟有何区别,各自的优缺点是什么,为了更好的扬长避短,提高程序性能,在使用之前需要我 ...
- STL常用容器用法
-1. 本文章中所有函数原型均为C++98的标准. 通用的操作 //遍历容器--以vector,map为例 vector<int> vt; map<int,int> mp; f ...
- c++ STL常用算法使用方法
#include <string> #include <vector> #include <functional> #include <iostream> ...
随机推荐
- Python——psutil的使用(获取系统性能信息)
>>> import psutil #导入psutil >>> a=psutil.virtual_memory() >>> a.total #总虚 ...
- linux后台运行之&和nohup区别,模拟后台守护进程
先来看一下&的使用 root@BP:~# cat test.sh #!/bin/bash while true do echo "linux">/dev/null d ...
- setjmp与longjmp非局部跳转函数的使用
[root@bogon code]# cat c.c #include<stdio.h> #include<setjmp.h> static jmp_buf env;//定义全 ...
- nginx屏蔽某一ip的访问
假设我们想禁止访问nginx次数最多的ip访问我们的网站 我们可以先查出那个ip访问次数最多 awk '{print $1}' nginx.access.log |sort |uniq -c|sort ...
- PostgreSQL Q&A: Building an Enterprise-Grade PostgreSQL Setup Using Open Source Tools
转自:https://www.percona.com/blog/2018/10/19/postgresql-building-enterprise-grade-setup-with-open-sour ...
- 【转载】Win10系统怎么清空剪切板?Win10系统清空剪切板的方法
以下文转载至系统之家: 网址:http://www.xitongzhijia.net/xtjc/20190319/152585.html Win10系统怎么清空剪切板?Win10系统清空剪切板的方法 ...
- java项目中异常处理情况
一,基本概念 异常是程序在运行时出现的不正常情况.是Java按照面向对象的思想将问题进行对象封装.这样就方便于操作问题以及处理问题. 异常处理的目的是提高程序的健壮性.你可以在catch和fin ...
- Java基础语法 第3节 常用软件安装-Webstorm
Webstorm是专用于web开发的号称最好的的编辑器,使用起来很方便. 一.安装 1.去官网下载正版安装包,官网地址:http://www.jetbrains.com/webstorm/ 2.开始安 ...
- ML(5)——神经网络2(BP反向传播)
上一章的神经网络实际上是前馈神经网络(feedforward neural network),也叫多层感知机(multilayer perceptron,MLP).具体来说,每层神经元与下一层神经元全 ...
- 基于SVN提交历史筛选作者并修改文件内容
笔者最近开发的项目中,是通过SVN做为版本管理工具的,因为需要创建的文件太多,所以有许多文件是在原有文件基础上拷贝过来修改的,这里就涉及到一个问题,原有文件中注释里填的JAVA类名.作者工号.创建时间 ...