当前位置: 首页 > news >正文

STL难记忆却常用的用法集合(持续更新中)

1、set集合

(1)插入用insert()

(2)将原本无序的元素插入 set 集合,set 内部的元素自动递增排序,且去除了重复元素

适合想要去除重复,又想要默认升序的。

但是set的循环是要用迭代器的,输出数字时还要在前面加*,因为迭代器本身是地址

for(set<int>::iterator it = s.begin();it!=s.end();it++){cout<<*it;
}

2、map遍历

map也会根据键的顺序来自动排序从小到大,键的类别必须是可以比较大小的

map跟set遍历方法相似,都是map是映射,一对一的关系,所以稍微有点不同。

it->first指的是第一个值,也就是关键字,key

it->second植的是第二个值,也就是关键字对应的值

map<string,int>mp;
for(map<string,int>::iterator it=mp.begin();it!=mp.end();it++){if(it->second==1){cout<<it->first<<" ";}}

3、map的删除,指定删除某个数

map<int,int>num;
auto it=number.find(num);
number.erase(it);

4、查找某个数是否在map里面,就是看存不存在

map<int,int>number;
auto it=number.find(num);
if(it!=number.end()){//如果不为最后一个指针+1//那么就是存在的//存在就删除number.erase(it);
}

4、给vector排序

sort(v.begin(),v.end());

5、栈入栈

stack<int>s;
s.push(1);

5、删除栈顶元素

s.pop();

6、取栈顶元素

s.top();

7、队列入队

queue<int>q;
q.push(3);

8、队列出列,删除队首元素

queue<int>q;
q.pop();

9、双端队列

入队

deque<int>dq;
dq.push_back(x);
dq.push_front(x);

10、删除队列队头队尾

dq.pop_back();
dq.pop_front();

11、删除队列的某一个元素

dq.erase(iterator it);
//删除某个迭代器

12、清空队列

dq.clear();

13、优先队列

优先队列,默认大根堆,就是每次从中取到的都是最大的元素

priority_queue<int> pq; // 默认大根堆, 即每次取出的元素是队列中的最大值
priority_queue<int, vector<int>, greater<int>> q; // 小根堆, 每次取出的元素是队列中的最小值
q.top();
q.push();	
q.pop();
q.size();

(持续更新中)

这里是红糖,记录我的小白成长史。

如果觉得对你有帮助的话可以点个赞,点个关注,创作不易,请多多支持。

我们下篇文章见!!


文章转载自:

http://C87xk1Le.zzfjh.cn
http://dMJOKaiK.zzfjh.cn
http://tjrM4U04.zzfjh.cn
http://LXTXZNdm.zzfjh.cn
http://FxdC5gCJ.zzfjh.cn
http://75Jzok5f.zzfjh.cn
http://pkYZedRo.zzfjh.cn
http://y9Kwrbce.zzfjh.cn
http://CviIqj5d.zzfjh.cn
http://McT4jZlN.zzfjh.cn
http://5YHXqvoP.zzfjh.cn
http://lFoQkUDn.zzfjh.cn
http://jCiKn9Ja.zzfjh.cn
http://8Z4bwo1l.zzfjh.cn
http://t4n4Zvem.zzfjh.cn
http://E0xmfeb4.zzfjh.cn
http://2KJWuWuN.zzfjh.cn
http://HaR4EkJO.zzfjh.cn
http://henTB9Cr.zzfjh.cn
http://znBWfv2R.zzfjh.cn
http://bWBstyKH.zzfjh.cn
http://C5mTUdnw.zzfjh.cn
http://SGwm08FB.zzfjh.cn
http://oS8rp8P7.zzfjh.cn
http://eAMwKmuE.zzfjh.cn
http://7NcyDYIU.zzfjh.cn
http://1mb7Ll4B.zzfjh.cn
http://a1aSlNSF.zzfjh.cn
http://EZj2Q1DV.zzfjh.cn
http://W0KAQNyn.zzfjh.cn
http://www.dtcms.com/a/247032.html

相关文章:

  • 【测试开发】函数进阶-纯函数
  • 欧盟RED网络安全标准EN 18031-2的要求
  • ES集群的分布式存储
  • YOLOv1 技术详解:NMS(非极大值抑制)的工作原理与实现细节
  • Python+TensorFlow:30分钟快速入门AI开发
  • LaViDa:基于扩散模型的多模态大模型,速度超越next-token范式
  • 魔百和网络机顶盒CM211-1硬件解析
  • linux驱动开发(6)-内核虚拟空间管理
  • IGBT开通时间、关断时间、死区时间
  • java复习 09
  • UE5场景漫游——鼠标控制旋转与第一人称漫游
  • 5.4.1树的存储结构
  • 获取Unity节点路径
  • 前端八股文 - JavaScript 篇
  • 【Create my OS】从零编写一个操作系统
  • mesh转solid freecad
  • docker compose的变量使用说明
  • Spring常见面试题
  • PCB比对--CAM Brd文件比对
  • 中文分词总结:历程、问题、发展
  • 【笔记】Blockchain
  • 黑龙江亿林网络启盛裸金属服务器评测:24 核 32G + 联通千兆共享,高负载业务的新利器
  • 68元开启智能硬件新纪元——明远智睿SSD2351开发板引领创新浪潮
  • Guava 在大数据计算场景下的使用指南
  • mysql_mcp_server quickstart
  • sqlserver 计算周岁年龄的函数
  • 【web应用】若依框架:若依框架中的面包屑导航与顶部导航栏:设计与实现
  • 前端面试七之列表渲染和组件重用
  • 新书速览|CUDA并行编程与性能优化
  • Transformer、RNN (循环神经网络) 和 CNN (卷积神经网络)的区别