STL
Julinus
希望在这里和大家一起学习交流。
展开
-
STL中的string
1 String概念 string是STL的字符串类型,通常用来表示字符串。而在使用string之前,字符串通常是用char*表示的。string与char*都可以用来表示字符串,那么二者有什么区别呢。string和char*的比较 string是一个类, char*是一个指向字符的指针。 string封装了char*,管理这个字符串,是一个char*型的容原创 2017-10-28 18:10:15 · 241 阅读 · 0 评论 -
Map和multimap容器
1、map/multimap的简介 map是标准的关联式容器,一个map是一个键值对序列,即(key,value)对。它提供基于key的快速检索能力。 map中key值是唯一的。集合中的元素按一定的顺序排列。元素插入过程是按排序规则插入,所以不能指定插入位置。 map的具体实现采用红黑树变体的平衡二叉树的数据结构。在插入操作和删除操作上比vector快。原创 2017-11-04 20:00:19 · 234 阅读 · 0 评论 -
Set和multiset容器
1、set/multiset的简介 set是一个集合容器,其中所包含的元素是唯一的,集合中的元素按一定的顺序排列。元素插入过程是按排序规则插入,所以不能指定插入位置。 set采用红黑树变体的数据结构实现,红黑树属于平衡二叉树。在插入操作和删除操作上比vector快。 set不可以直接存取元素。(不可以使用at.(pos)与[]操作符)。 multiset与set的区原创 2017-11-03 13:33:20 · 232 阅读 · 0 评论 -
优先级队列priority_queue
1、概念: (1) 、最大值优先级队列、最小值优先级队列 (2)、优先级队列适配器 STLpriority_queue (3)、用来开发一些特殊的应用,请对stl的类库,多做扩展性学习2、示例代码:#includeusing namespace std;#include#include#in原创 2017-11-02 12:53:22 · 192 阅读 · 0 评论 -
List容器
1、List简介 list是一个双向链表容器,可高效地进行插入删除元素。 list不可以随机存取元素,所以不支持at.(pos)函数与[]操作符。It++(ok) it+5(err) #include 2、list对象的默认构造 list采用采用模板类实现,对象的默认构造形式:listlstT; 如: list lstInt;原创 2017-11-01 13:10:58 · 204 阅读 · 0 评论 -
Queue容器
1、Queue简介 queue是队列容器,是一种“先进先出”的容器。 queue是简单地装饰deque容器而成为另外的一种容器。 #include 2、queue对象的默认构造 queue采用模板类实现,queue对象的默认构造形式:queuequeT; 如: queue queInt; //一个存放int的queue容器。原创 2017-10-31 13:00:53 · 218 阅读 · 0 评论 -
综合案例
案例:学校演讲比赛1)某市举行一场演讲比赛,共有24个人参加,按参加顺序设置参赛号。比赛共三轮,前两轮为淘汰赛,第三轮为决赛。2)比赛方式:分组比赛第一轮分为4个小组,根据参赛号顺序依次划分,比如100-105为一组,106-111为第二组,依次类推,每组6个人,每人分别按参赛号顺序演讲。当小组演讲完后,淘汰组内排名最后的三个选手,然后继续下一个小组的比赛。 第二轮分原创 2017-11-08 16:36:34 · 187 阅读 · 0 评论 -
stack容器
Stack简介 stack是堆栈容器,是一种“先进后出”的容器。 stack是简单地装饰deque容器而成为另外的一种容器。 #include stack对象的默认构造stack采用模板类实现, stack对象的默认构造形式:stack stkT; stack stkInt; //一个存放int的stack容器。stack原创 2017-10-30 21:24:49 · 260 阅读 · 0 评论 -
Deque容器
1、Deque简介 deque是“double-ended queue”的缩写,和vector一样都是STL的容器,deque是双端数组,而vector是单端的。 deque在接口上和vector非常相似,在许多操作的地方可以直接替换。 deque可以随机存取元素(支持索引值直接存取,用[]操作符或at()方法,这个等下会详讲)。 deque头部和尾部添加或移除元素都原创 2017-10-29 22:01:06 · 205 阅读 · 0 评论 -
Vector容器
1 Vector容器简介 vector是将元素置于一个动态数组中加以管理的容器。 vector可以随机存取元素(支持索引值直接存取,用[]操作符或at()方法,这个等下会详讲)。 vector尾部添加或移除元素非常快速。但是在中部或头部插入元素或移除元素比较费时2 vector对象的默认构造 vector采用模板类实现,vector对象的默认构造形式原创 2017-10-29 00:11:23 · 304 阅读 · 2 评论 -
STL常用算法
1、常用的查找算法adjacent_find()在iterator对标识元素范围内,查找一对相邻重复元素,找到则返回指向这对元素的第一个元素的迭代器。否则返回past-the-end。binary_search在有序序列中查找value,找到则返回true。注意:在无序序列中,不可使用。count() 利用等于操作符,把标志范围内的元素与输入值比较,返回相原创 2017-11-05 20:09:52 · 189 阅读 · 0 评论