
------STL使用------
大芝士球
一个平凡人心中的波澜壮阔
展开
-
sort 排序
默认的sort函数是按升序排sort(a,a+n);两个参数分别为待排序数组的首地址和尾地址STL中 sort 默认是字典序升序,如果我们要改变排序顺序,那么就可以使用 sort 的第三个参数:如果希望a数组中的元素从大到小排列(或按照某一个规则进行排列),我们可以再为sort传入第三个参数——“排序方法”sort(a, a + 5, greater<int&...原创 2019-03-15 23:32:07 · 749 阅读 · 0 评论 -
upper_bound和lower_bound的使用
目录描述upper_bound和lower_bound的区别upper_bound和lower_bound的返回值描述lower_bound(ForwardIter first, ForwardIter last,const _Tp& val)返回一个非递减序列[first, last)中的第一个大于等于值val的位置upper_bound(Forward...原创 2019-03-20 10:23:08 · 253 阅读 · 0 评论 -
C++ STL中queue的用法
包含在#include<queue>头文件中定义一个队列变量:queue<type> q; //type即为该队列的数据类型插入元素 : q.push(a); //在前一个元素之后添加弹出队首元素 : q.pop();返回队列长度 : q.size();返回队首元素 ...原创 2019-02-02 16:47:09 · 3378 阅读 · 0 评论 -
C++ STL map容器基础用法
有map与multimap两种,都是关联容器,它提供了一对一的关系,在有些场景下可以大大减少时间复杂度内部的数据结构是平衡二叉树其中multimap可以存储重复的键值,如上图它们会根据键值key来进行升序排序,也就是自动排序,且不能使用sort常用函数:insert() 插入元素erase() 删除一个元素 //按key删除e...原创 2019-02-05 17:54:10 · 692 阅读 · 0 评论 -
C++ STL中 priority_queue 的使用
与普通的队列不同,在优先队列中,元素有优先级,访问元素时,具有最高级优先级的元素先被访问。与堆类似,加入新的数会自动维护顺序优先队列的时间复杂度为O(log n),n为队列中元素的个数常用方法:top( ) //返回优先队列的队顶元素pop( ) //删除队首元素push( ) //加入一个元素size( ) //返回队列中的元素个数empty( )...原创 2019-02-06 14:42:16 · 589 阅读 · 0 评论 -
C++ STL中 set/multiset 的用法
set是一种关联式容器(关联容器set, multiset, map, multimap),其内部的数据结构是红黑树(RB tree )其性能要优于平衡二叉树在set中元素的值是唯一的,而且其能根据元素的值自动进行排序。set中查找元素使用二分查找,时间复杂度是log2常用方法begin() //返回第一个元素end() //返回最后一个元素clear...原创 2019-02-06 15:08:10 · 680 阅读 · 0 评论 -
sort排序实战 ——浮点数排序
浮点数排序我们有N个正浮点数,均小于10000.0。现在需要将这些浮点数按照离它最近的整数的差从小到大排序,浮点数与距离最近的整数的差越小,这个浮点数的排位越靠前;如果差相等,按照浮点数的值从小到大排序。判断浮点数相等应该使用如下语句:if (fabs(a - b) < EPSILON) { //执行当两个浮点数 a 和 b 相等时的操作}其中EPSILO...原创 2019-03-16 15:14:43 · 7793 阅读 · 0 评论 -
sort排序实战——交叉排序 (原来之前我对sort的理解还是有错误)
交叉排序蒜头君很无聊,他想对数组中的某些元素进行排序。现在我们有N个数,他想先将数组中第l1到第r1的数字按从小到大的顺序排序。再将数组中第l2到第r2的数字按从大到小的顺序排序。我们帮他算一算数组排序后的结果吧~输入格式第一行五个整数 N,l1,r1,l2,r2,其中 0<l1<r1<N,0<l2<r2...原创 2019-03-16 16:21:13 · 1024 阅读 · 0 评论 -
C++ STL中vector的用法
使用vector构造一个动态数组vector<T> vec。这样就定义好了定义了一个名为vec的储存T类型数据的动态数组。其中T是我们数组要储存的数据类型,可以是int、float、doubleC++vector方法总结:方法 功能 push_back 在末尾加入一个元素 pop_back 在末尾弹出一个元素 size 获取长度...原创 2019-03-19 08:50:17 · 423 阅读 · 0 评论