嗯...

 

不得不说c++中的STL库是一个神奇的东西

 

可以使你的代码显得更加简洁....

 

今天就只讲STL中的三个鬼畜:

 

max       min       swap

 

具体操作见代码!!!

 

 #include<cstdio>
#include<algorithm>//此头文件包含了有关于算法的一些东西 using namespace std; int main()
{
//调用STL中的鬼畜
max(,);//只支持两个数,找出两个数中较大的一个数
min(,);//只支持两个数 ,找出两个数中较小的一个数
int a=,b=;
swap(a,b);//只支持两个数,交换a、b两数
return ;
}

有的人就会问了,有什么好用的,只支持两个数之间的操作...

 

下面,就教你操作多个数:

min(min(a,b),c);
max(max(a,b),c); //进行一个镶嵌即可

注意:

当进行上述操作时,无论是几个数,都要保持这几个数的类型完全一样

 

Q:如果不一样怎么办???!!

 

A:看代码!!!

 int a; long long b;

 //方法:将较小的类型转换成较大的类型,共两种方法,都可转化

 min((long long)a,b);  //方法1

 min(1ll*a,b);   //方法2

就这样吧,鬼畜的它真的可以进行代码简化

关于STL库中的max min swap的更多相关文章

  1. STL库中string类内存布局的探究

    在STL中有着一个类就是string类,他的内存布局和存储机制究竟是怎么样的呢? 这就是建立好的string 可以看出,图中用黄色框框标注的部分就是主要区域 我们用来给string对象进行初始化的字符 ...

  2. c++ stl库中的set

    简单说来 set(集合)里的元素 不会有相同元素(也就是说 相同的值不存 )并且 存进去会自动排序  类比sort默认排序从小到大 set排序也是 set/multiset会根据待定的排序准则,自动将 ...

  3. STL库中的正态分布函数

    在设计抽奖一类程序中,有时会需要一种概率“有较大可能获得一个普通结果,有较小可能获得一个糟糕或极好的结果”,这就可以用正态分布函数来获得这样一个结果. STL中已经提供了一系列随机分布的函数,包括正态 ...

  4. STL 库中的陷阱----一个难以察觉的 bug

    请找出下面程序的 bug? int maxProfit2(vector<int> &prices) { int local[3] = {0}; int global[3] = {0 ...

  5. C++STL 库中set容器应用

    #include<iostream> #include<cstdio> #include<set> using namespace std; set<int& ...

  6. C++STL库中vector容器常用应用

    #include<iostream> #include<vector> #include<algorithm> using namespace std; int m ...

  7. C++STL库中map容器常用应用

    #include<iostream> #include<cstdio> #include<map> //按键值大小构成二叉搜索树 using namespace s ...

  8. STL库中的equal_range()

    equal_range根据键值,返回一对迭代器的pair对象.如果该键值在容器中存在,则pair对象中的第一个迭代器指向该键关联的第一个实例,第二个迭代器指向该键关联的最后一个实例的下一位置.如果找不 ...

  9. STL库中神奇函数nth_element

    用法:nth_element(数组名,数组名+第k小元素,数组名+元素个数) 这个函数主要用来将数组元素中第k小的整数排出来并在数组中就位,随时调用. 例如: ]={,,,,},k ; cin> ...

随机推荐

  1. php各种验证类

    <?php /**  * 验证类  *  */ class VerifyAction{     /**      * 是否为空值      */       public static func ...

  2. [转]JS的内存泄露处理

    问题: 1.给DOM对象添加的属性是一个对象的引用.范例: var MyObject = {}; document.getElementByIdx_x('myDiv').myProp = MyObje ...

  3. 洛谷【P1177】【模板】基数排序

    题目传送门:https://www.luogu.org/problemnew/show/P1177 我对计数排序的理解:https://www.cnblogs.com/AKMer/p/9649032. ...

  4. 使用union来遍历结构体中的成员

    前几天和实验室的同学讨论问题的时候发现他使用的一段数据校验的代码自己以前没有接触过,今天有空就把它整理了一下. #include <stdio.h> #include <stdlib ...

  5. Elasticsearch2.x --DeleteByQuery

    一.安装插件 要删除某个索引的一个type下的所有文档,相当于关系型数据库中的清空表操作.查阅了一些资料可以通过Delete-by-Query插件删除,首先使用插件管理器安装Delete-by-Que ...

  6. 第八篇 elasticsearch链接mysql自动更新数据库

    增量更新 input { jdbc { jdbc_driver_library => "D:\tools\mysql\mysql-connector-java-5.1.45/mysql ...

  7. Angular12 学习angular2前的热身准备

    1 ECMA European Computer Manufactures Association 这个组织的目标是评估,开发和认可电信和计算机标准. 百度百科:点击前往 ECMA65:满足ECMA标 ...

  8. mac上如何查看gif

    今天生成了一个gif,结果用mac自带的图片预览功能打开,图片被切成一张一张的,不是动图效果了.原以为还得下第三方看图软件,后来百度下发现mac本身也可以打开. 方法一: 鼠标右击图片,选择“快速查看 ...

  9. 发起http(s)请求

    发起http(s)请求我这里主要列举了3种方式: 一.命令行的方式 二.通过工具 三.通过代码 一.命令行的方式 1. curl  curl官网: https://curl.haxx.se/downl ...

  10. 如何将maven项目打包成可执行的jar

    如何将maven项目打包成可执行的jar 分类: maven2010-12-17 10:18 10411人阅读 评论(2) 收藏 举报 jarmavenassemblyjava 方法一:将项目及所依赖 ...