IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> STL容器 -> 正文阅读

[系统运维]STL容器

粗略的总结


  • stl容器

cin>>s; ???空格,回车,EOF结束

getline(cin,s); 输入一行,空格不结束

长度s.size();

遍历:

for(int i=0;i<s.size();i++){

cout<<s[i];

}

拼接:string t=”123”;

string s=”456”;

s=s+t;//s=”123456”;

s=s+”789”;//s=”123456789”;

s=”00”+s;//s=”00123456789”

清空:s.clear();

??s.empty();//如果s为空则值为1,否则为0;

  • vector

一维的操作:
定义:vector<int>v;

插入:v.push_back(1);

cout<<v[0];

二维的操作:

vector< vector<int> > asd1;//定义

对于一维数组,可以使用size()获取其长度。

int size = asd.size();

对于二维数组,可以使用以下方法获取行、列的长度

int size_row = asd1.size(); ?????????//获取行数

int size_column = asd1[0].size(); ???//获取列数

直接赋值即可

asd1[1][1] = 1;

cout << asd1[1][1] <<endl;

asd1[1].push_back(23); //插入列元素

asd1.push_back(asd); //插入一行

删除行:

auto test1 = asd1.begin();

asd1.erase(++test1);

删除列:

auto test2 = test1.begin();

asd1[0].erase(++test2);

遍历:

vector<vector<int> >::iterator p1;

vector<int>::iterator p2;

for (p1 = a.begin(); p1 != a.end(); p1++){

????????for (p2 = p1->begin(); p2 != p1->end(); p2++){

????????????????cout << "[" << *p2 << "]";

????????}

}?

  • stack

stack<int>st;

先进后出
输入:
st.push(1);//在栈首增加
输出:
st.top();//输出栈首元素
st.pop();//删除栈首元素

重新定义就自动清空了
while(cin>>n) stack<int>st;

  • queue

queue<int>q;

先进先出

输入
q.push(1);

输出:
q.front();
q.pop();

优先队列

priority_queue<int>q;//大根堆,降序排序
输入:
q.push(1); ?

输出
q.top();
q.pop();

priority_queue<int,vector<int>,greater<int>>tp;//小根堆,升序排序

  • set去重排序

set<int>st;
st.insert();
*st.begin();//第一个元素 ??*st.end();最后一个元素
st.find(1);//查找有无1这个元素;
st.count(1);//有几个元素1;
multiset<int>st;//不去重排序;

  • map数组

map<int,string>mp;//int相当于下标,string相当于内容
int和string的类型可以随意更改;
mp[1]=”123”;

  • deque双端队列

deque<int>d;

迭代器:

begin() 指向第一个元素位置

end() 指向最后一个元素后一个位置

rbegin() 指向第一个元素之前一个位置

rend() 指向最后一个元素位置

容量相关:

size() 返回容器大小

max_size() 返回容器最大容量

empty() 判断容器是否为空

resize() 改变容器大小

?成员访问:

使用[ ]方式访问,使用.at()方式访问

front() ?返回第一个元素

back() ?返回最后一个元素

容器调整:

assign 重新给容器分配元素

push_back 向容器末尾插入元素

push_front 向元素开头插入元素

pop_back 删除末尾元素

pop_front 删除开头元素

insert 向指定位置插入元素,返回值为指向最后一个插入位置的迭代器

erase 删除元素

swap 交换两个容器

clear 清空容器

emplace 向指定位置插入元素,只能插入单个元素

emplace_front 在容器开头插入元素(效率比push_front高)

emplace_back 在容器末尾插入元素

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-14 21:37:00  更:2022-02-14 21:39:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:36:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码