首页 > 其他分享 >关于STL的大整理

关于STL的大整理

时间:2023-12-07 21:35:22浏览次数:23  
标签:insert set cout 示例 STL 关于 整理 排序

set

集合,用于去重和排序。

用法

set<储存的类型> 容器名;

常用函数

//时间复杂度O(logn)

insert() //插入元素,自动排序
//示例
s.insert(3);s.insert(1);s.insert(2);s.insert(4);s.insert(1);s.insert(5);
//输出1 2 3 4 5

find()  //查找一个数,返回迭代器

count()  //返回某一个数的个数
//示例
cout << s.count(1) << endl;
//返回1的个数,若是 multiset 可以返回总共多少个。

erase()
    (1) 输入是一个数x,删除所有x   O(k + logn)
    (2) 输入一个迭代器,删除这个迭代器
lower_bound()/upper_bound()
    lower_bound(x)  返回大于等于x的最小的数的迭代器
    upper_bound(x)  返回大于x的最小的数的迭代器

用法

  • 输出头尾元素,可以用作‘双端优先队列’
    cout << *st.begin(); << " " << *(--st.end());
    或者
set<元素类型>::iterator it = se.end();
it--;
cout << *it << endl;

标签:insert,set,cout,示例,STL,关于,整理,排序
From: https://www.cnblogs.com/codwarm/p/17884015.html

相关文章

  • Markdown最全基本语法整理 - 有这一篇就够了
    参考:Markdown最全基本语法整理-有这一篇就够了-郭炫韩Coding-博客园(cnblogs.com)    《一》什么是MarkdownMarkdown是一种轻量级的标记语言,它允许人们使用易读易写的纯文本格式编写文档,借助可实现快速排版且转换成格式丰富的HTML页面。目前被越来越多的写作爱好......
  • 关于FGH
    虽然是英文但是讲的不错,稍微翻译一下罢(虽然已经有挺多人写过这个了)网站说起来发明FGH这个标尺的确实是神,简洁明了前置知识超运算这倒是非常自然的想法若将加法看作第一级运算,乘法看作第二级运算,乘方看作第三级运算,如何继续推广呢?我们观察以下乘法和乘方是怎么定义的\[a*b=......
  • 如何搭建一套完整的智能安防视频监控平台?关于设备与软件选型的几点建议
    安防视频监控系统主要由前端摄像机设备、视频显示设备、视频存储设备、安防应用软件/平台以及其它传输、辅助类设备组成。一般来说,安防监控系统具有可扩展和开放性,以方便未来的扩展和与其他系统的集成。今天我们就来介绍一下,搭建一套完整的安防监控平台,应该如何选型?1、前端监控设......
  • 《Java编程思想第四版》学习笔记45--关于图标
    //:Faces.java//IconbehaviorinJButtonspackagec13.swing;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassFacesextendsJPanel{staticIcon[]faces={newImageIcon("face0.gif"),......
  • 关于浮点数误差以及四舍五入
    https://blog.csdn.net/Xavier_97/article/details/126931927由于很玄学,我们考虑统一使用库函数round和自己手写round来实现最终输出整数的四舍五入和小数保留k位的四舍五入#include<iostream>#include<cmath>usingnamespacestd;intmain(){doublea=1.4999999......
  • 关于uniapp打包APP自定义基座调试,遇到首页同意网络权限后白屏问题
    解决方案:1、在App.vue文件中,onShow生命周期内添加一段代码,检测是否同意使用互联网权限:uni.onNetworkStatusChange(function(res){ console.log('onNetworkStatusChange',res); if(res.isConnected){ setTimeout(()=>{ uni.reLaunch({ url:'/pages/......
  • 关于类图中的箭头含义
    UML类图中各箭头表示总结1、泛化2、实现3、依赖4、关联5、聚合6、组合在UML类图中,箭头关系是用来表示类之间的关系的。箭头关系的种类有以下几种:1、泛化泛化:表示类之间的继承关系。箭头从子类指向父类。箭头:实线空心三角箭头如下图所示,Person为父类,Student和Professor为子类 ......
  • Golang GC是标记清除GC算法吗?与复制算法、标记整理算法的区别
    Golang(Go语言)使用的是标记清除(MarkandSweep)的垃圾回收(GC)算法。下面是标记清除算法与复制算法以及标记整理算法之间的区别和优势:标记清除算法(MarkandSweep):工作原理:标记清除算法分为标记和清除两个阶段。首先,从根对象(如全局变量、堆栈中的对象)开始,标记所有可以访问到的对象。然后......
  • MySQL习题整理
    每日一练=====================================================================================创建管理表库1.将表departments中的数据插入新表dept02中CREATETABLEdept02ASSELECT*FROMatguigudb.departments2.创建表CREATETABLEemp01(idINT(7),firs......
  • 《Java编程思想第四版》学习笔记44--关于按钮组
    //:ButtonGroups.java//Usesreflectiontocreategroupsofdifferent//typesofAbstractButton.packagec13.swing;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.border.*;importjava.lang.reflect.*;publicclassB......