码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • STL的pair知识点大全


    1:se't容器set.equal range(elem)


    1.上限是闭区间,下限是开区间,如[beg,end)返回容器中与elem相等的上下限的两个迭代器,pair中。函数返回两个迭代器,而这两个迭代器被封装在pair中。

    pair< set::iterator,set::iterator >pairIt.equal_range(5);

    2. pair译为对组,可以将两个值视为一个单元。如T1为int,T2为float。T1,T2也可以是自定义类型。

    3. pair存放的两个值的类型(可以不相同),可以不一样pair.first是pair里面的第一个值,是T1类型。
    ◎pair.second是pair里面的第二个值,是T2类型。

    4.函数equal_range是set中的一个成员函数,它返回一个pair对象,其中包含两个迭代器。这两个迭代器表示一个范围,其中第一个迭代器指向set中第一个不小于给定值的元素,而第二个迭代器指向第一个大于给定值的元素。如果给定值存在于set中,那么这个范围将包括所有相同的元素。

    1. #include
    2. using namespace std;
    3. int main(){
    4. set<int,less<int>>s1;
    5. set<int,greater<int>>s2;
    6. s1.insert(1);
    7. s1.insert(5);
    8. s1.insert(3);
    9. s2.insert(1);
    10. s2.insert(5);
    11. s2.insert(3);
    12. set<int>::iterator it;
    13. s1.insert(6);
    14. s1.insert(8);
    15. s1.insert(7);
    16. s1.insert(10);
    17. it=s1.lower_bound(6);
    18. cout<<*it<//6
    19. it=s1.upper_bound(6);
    20. cout<<*it<//7
    21. cout<<"s1:";
    22. for(it=s1.begin();it!=s1.end();it++)
    23. cout<<*it<<" ";//1 3 5 6 7 8 10
    24. cout<
    25. pairint>::iterator,set<int>::iterator>p=s1.equal_range(6);
    26. cout<<*(p.first)<//first是pair队组中的第一个元素(6)
    27. cout<<*(p.second)<//second是pair队组中的第二个元素(7)
    28. return 0;
    29. }

    2.如果将s1.equal_range(6)中的6改成12,会发生以下情况:

    使用equal_range(12)将不会在set中找到值为12的元素,因为12不在集合中,并且它比集合中的任何元素都大。在这种情况下,equal_range会返回一对迭代器,其中第一个迭代器指向set结束(end()),因为没有元素大于或等于12,同时第二个迭代器也指向set结束(end()),因为没有元素比12更大。

  • 相关阅读:
    为爱出发,与善同行丨纬创软件2023北京善行者圆满收官
    数据结构之八大排序及代码
    快速构建你的Web项目
    Profibus主站转Profinet网关介绍
    java计算机毕业设计vue架构云餐厅美食订餐系统源码+mysql数据库+系统+lw文档+部署
    Activity的启动模式
    在idea命令行,or linux 终端执行命令,快速获取通过脚本上证指数、创业板实时行情
    2. java流中常见的操作符
    spring启动流程(二):包的扫描流程
    Google Earth Engine APP(GEE)—查看亚马逊平原的1984——至今的每一景影像
  • 原文地址:https://blog.csdn.net/2301_79724394/article/details/139308847
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号