【C++】【自用】STL六大组件:算法

文章目录

    • 🔺sort
    • stable_sort
    • 🔺reverse
    • 🔺swap
    • 🔺find
    • 🔺max/min
    • 🔺next_permutation/prev_permutation 全排列
    • binary_search
    • lower_bound/upper_bound 求下界和上界
    • set_union/set_intersection/set_difference 求并差交集

🔺sort

在这里插入图片描述

stable_sort

在这里插入图片描述

🔺reverse

在这里插入图片描述

🔺swap

C++98:

不推荐 swap(v1, v2),这样是深拷贝,降低效率
推荐 v1.swap(v2)

在这里插入图片描述

C++11:

swap(v1, v2),使用的是移动构造、移动赋值
v1.swap(v2)
效果一样了	

在这里插入图片描述

🔺find

在这里插入图片描述

🔺max/min

🔺next_permutation/prev_permutation 全排列

在这里插入图片描述
在这里插入图片描述

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{vector<int> v = {1, 3, 2};sort(v.begin(), v.end());do{for(auto e: v){cout << e << " ";}cout << endl;}while(next_permutation(v.begin(),v.end()));	// 从升序开始return 0;
}

在这里插入图片描述

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{vector<int> v = {1, 3, 2};sort(v.begin(), v.end(), greater<int>());do{for(auto e: v){cout << e << " ";}cout << endl;}while(prev_permutation (v.begin(),v.end()));	// 从降序开始return 0;
}

binary_search

lower_bound/upper_bound 求下界和上界

在这里插入图片描述
在这里插入图片描述
返回的是第一个 >= val 的起始位置

lower_bound
在这里插入图片描述
返回的是第一个 > val 的值

set_union/set_intersection/set_difference 求并差交集

求并集:
(用 multiset 也可以
在这里插入图片描述

求交集:
在这里插入图片描述

求差集:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/102005.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JNI中调用Java函数

文章目录 一、JNI 注册二、JNI 调用 Java 函数1、实例2、总结3、参考 三、JNI 数据传递四、JNA五、图像传递 一、JNI 注册 JNI 分成静态注册和动态注册 静态注册 cpp 实现 JNIEXPORT jstring JNICALL Java_com_example_hellojni_HelloJni_stringFromJNI(JNIEnv *env, jobject…

【深蓝学院】手写VIO第7章--VINS初始化和VIO系统--笔记

0. 内容 1. VIO回顾 整个视觉前端pipeline回顾&#xff1a; 两帧图像&#xff0c;可提取特征点&#xff0c;特征匹配&#xff08;描述子暴力匹配或者光流&#xff09;已知特征点匹配关系&#xff0c;利用几何约束计算relative pose([R|t])&#xff0c;translation只有方向&…

EsayExcel让不同标题有不同的颜色

今天我在github社区的时候遇见了这个issues&#xff0c;我有看了下百度发现很多人需要这个问题的解决方案&#xff0c;接下来我就写一份这个问题的解决方案。 您的需求&#xff1a; ​ 您好我了解到您的需求&#xff0c;您的需求是为每一个标题设置不同的颜色。 我的解决方案…

Linux Centos7 下使用yum安装的nginx平滑升级

1. 查看当前nginx版本 1nginx -v2. 查看centos版本 1cat /etc/redhat-release3. 创建一个新的文件nginx.repo&#xff0c;其中第三行的7是因为我的centos版本是7点多的&#xff0c;你看自己是多少就改多少 1vim /etc/yum.repos.d/nginx.repo23[nginx]4namenginx repo 5baseu…

Unity后台登录/获取数据——BestHTTP的使用Get/Post

一、使用BestHTTP实现登录功能&#xff08;Post&#xff09; 登录具体的步骤如下&#xff1a; 1&#xff1a;传入你的用户名和密码&#xff0c;这是一条包括链接和用户名密码的链接 2&#xff1a;使用BestHTTP的Post功能将链接传到服务器后台 3&#xff1a;后台拿到了你传送…

2023年中国超导磁体市场规模、需求量及行业竞争现状分析[图]

超导磁体一般是指用超导导线绕制的能产生强磁场的超导线圈&#xff0c;还包括其运行所必要的低温恒温容器。通常电磁铁是利用在导体中通过电流产生磁场&#xff0c;由于超导材料在超导状态下具有零电阻特性&#xff0c;因此可以以极小的面积通过巨大的电流。超导磁体具有场强高…

如何自制一本电子书,安利一个平台

有没有想过把纸质版的书刊制作成图文相结合的电子书&#xff0c;实现随时随地的阅读。其实很多人在实际制作时常常陷入困扰&#xff1a;创意不够&#xff0c;无法找到理想的素材&#xff0c;制作繁琐等等。感觉好难啊&#xff01; 不过&#xff0c;幸运的是&#xff0c;我发现…

【Method】把 arXiv论文 转换为 HTML5 网页

文章目录 MethodReference https://ar5iv.labs.arxiv.org/ Articles from arXiv.org as responsive HTML5 web pages. 可以将来自 arXiv 的 PDF 论文渲染成 HTML5 网页版本。 Method View any arXiv article URL by changing the X to a 5. 将 arXiv 网址中的 x 换成 5 再回…

教程分享:如何将微信公众号变成淘宝客查券返利机器人自动赚佣金?

教程分享&#xff1a;如何将微信公众号变成淘宝客查券返利机器人自动赚佣金&#xff1f; 在现代社交媒体和电商激烈的竞争中&#xff0c;有一种强大的工具可以帮助你在微信公众号上轻松实现查券和返利功能&#xff0c;而且全自动赚取佣金。这个工具就是"微赚淘客系统3.0&…

补环境框架

GitHub - bnmgh1/node-sandbox: 魔改Node补环境框架 GitHub - fanchangrui/catvm: js逆向环境框架基础&#xff08;持续补充&#xff09;&#xff08;沙盒框架&#xff09;

201、RabbitMQ 之 Exchange 典型应用模型 之 工作队列(Work Queue)

目录 ★ 工作队列介绍代码演示测试注意点1&#xff1a;注意点2&#xff1a; ★ 工作队列介绍 工作队列&#xff1a; 就是让多个消费者竞争消费同一个消息队列的消息&#xff0c;相当于多个消费者共享消息队列。 ▲ RabbitMQ可以让多个消费者竞争消费同一个消息队列 ▲ 消息队…

thinkphp6 - 超详细使用阿里云短信服务发送验证码功能,TP框架调用对接阿里云短信发验证码(详细示例代码,一键复制开箱即用)

效果图 在thinkphp 5/6 框架(只要不是太低的版本就能用)中,实现接入调用阿里云短信服务详细教程,整个配置过程及示例代码保证小白也能轻松完成! 直接复制就行,改个阿里云参数就能用了。

2023-10-11

昨晚有点事&#xff0c;把日记忘了&#xff0c;今天补一下捏。 昨天回本部办了一些事情&#xff0c;一直搞到了晚上&#xff0c;所以基本啥也没干.... 然后实验太多了&#xff0c;得抓紧把实验报告给写了

了解三层架构:表示层、业务逻辑层、数据访问层

目录 背景&#xff1a; 三层架构 什么是三层: 分层的目的&#xff1a; 三层的结构关系​编辑 三层表现形式:​编辑 三层的优缺点&#xff1a; 总结: 背景&#xff1a; 三层架构是一种软件设计模式&#xff0c;可称为客户端-服务器-架构&#xff0c;把各个功能模块划分…

MySql运维篇---009:分库分表:垂直拆分、水平拆分、通过MyCat进行分片,读写分离:一主一从、 双主双从

3.分库分表 3.1 介绍 3.1.1 问题分析 使用单个数据库存储所有的数据&#xff0c;如果磁盘和内存和内存不足了可以增大磁盘和内存&#xff0c;但是对于一台服务器的磁盘和内存不可能无限制的扩张下去&#xff0c;它是受我们服务器的硬件影响的&#xff0c;如果说数据库所存储…

C语言字符串查找函数和错误信息报告函数(strstr、strtok,strerror)

文章目录 摘要1 strstr1.1 函数使用1.2 模拟实现 2. strtok2.1 函数介绍 3. strerror3.1 函数介绍3.2 strerror 与 perror 摘要 本篇文章介绍了C语言中常用的字符串处理函数&#xff0c;包括字符串查找函数 strstr 和字符串分割函数 strtok&#xff0c;以及错误信息报告函数 s…

SpringBoot使用随机端口启动

1.获取可用端口工具类 import java.net.InetAddress; import java.net.Socket; import java.util.Random;public class ServerPortUtil {private static final int MAX_PORT 65535;private static final int MIN_PORT 8000;public static String getAvailablePort() {Random…

Linux知识点 -- 网络基础 -- 数据链路层

Linux知识点 – 网络基础 – 数据链路层 文章目录 Linux知识点 -- 网络基础 -- 数据链路层一、数据链路层1.以太网2.以太网帧格式3.重谈局域网原理4.MAC地址5.MTU6.查看硬件地址和MTU的命令7.ARP协议 二、其他重要协议或技术1.DNS&#xff08;Domain Name System&#xff09;2.…

gunicorn

gunicorn 是一个 Python WSGI HTTP 服务器 可以用于运行 Python 网站或 Web 应用程序。 WSGI&#xff08;Web Server Gateway Interface&#xff09;定义了一种标准的接口&#xff0c; 将 Web 服务器和 Python 应用程序分离开来&#xff0c;使得 Web 服务器可以与不同的 Pytho…

[Machine learning][Part4] 线性回归模型技巧

目录 正规方程法 梯度下降法 缩放特征 学习率选择 正规方程法 这种方法可以不多次迭代梯度下降函数就能得到w,b。但是缺点是在大量数据训练情况下效率较低&#xff0c;其次是这种算法仅仅在线性回归中实现了&#xff0c;并没有在其他模型中实现&#xff0c;因此&#xff0c…