multiset 的用法(c++)
2022/1/26 14:34:17
本文主要是介绍multiset 的用法(c++),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
c++语言中,multiset是<set>库中一个非常有用的类型,它可以看成一个序列,插入一个数,删除一个数都能够在O(logn)的时间内完成,而且他能时刻保证序列中的数是有序的,而且序列中可以存在重复的数。
简单应用:
通过一个程序来看如何使用multiset:
#include <string> #include <iostream> #include <set> using namespace std; void main(){ intx; scanf("%ld",&x); multiset<int>h; //建立一个multiset类型,变量名是h,h序列里面存的是int类型,初始h为空 while(x!=0){ h.insert(x); //将x插入h中 scanf("%ld",&x); } while(!h.empty()){ // 序列非空 h.empty()==true时 表示h已经空了 __typeof(h.begin()) c=h.begin(); //c指向h序列中第一个元素的地址,第一个元素是最小的元素 printf("%ld ",*c); //将地址c存的数据输出 h.erase(c); //从h序列中将c指向的元素删除 } }
对于输入数据:32 61 12 2 12 0,该程序的输出是:2 12 12 32 61。
放入自定义类型的数据
这篇关于multiset 的用法(c++)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15PingCAP 黄东旭参与 CCF 秀湖会议,共探开源教育未来
- 2024-05-13PingCAP 戴涛:构建面向未来的金融核心系统
- 2024-05-09flutter3.x_macos桌面os实战
- 2024-05-09Rust中的并发性:Sync 和 Send Traits
- 2024-05-08使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B
- 2024-05-08完工标准(DoD)与验收条件(AC)究竟有什么不同?
- 2024-05-084万 star 的 NocoDB 在 sealos 上一键起,轻松把数据库编程智能表格
- 2024-05-08Mac 版Stable Diffusion WebUI的安装
- 2024-05-08解锁CodeGeeX智能问答中3项独有的隐藏技能
- 2024-05-08RAG算法优化+新增代码仓库支持,CodeGeeX的@repo功能效果提升