STL
文章平均质量分 71
分享STL学习笔记
努力码到100k
仅记录本人的学习过程中的笔记,学习渠道来自各个博主,没有侵权的意图,希望能帮助到你。
展开
-
Map 和 Set 的特点和区别
Map是一组键值对的结构,用于解决以往不能用对象做为键的问题,具有极快的查找速度。由于key不能重复,所以,在Set中,没有重复的key。5. map和set都是stl中的关联容器,map以键值对的形式存储,key=value组成pair,是一组映射关。4. Set的值是唯一的可以做数组去重,Map由于没有格式限制,可以做数据存储。set只有值,可以认为只有一个数据,并且set中元素不可以重复且自动排序。1. Map是键值对,Set是值的集合,当然键和值可以是任何的值;的数据结构,Map 是一种叫做。原创 2023-09-25 10:32:39 · 64 阅读 · 0 评论 -
初识STL
非质变算法:是指运算过程中不会更改区间内的元素内容,例如查找、计数、遍历、寻找极值等等。提供一种方法,使之能够依序寻访某个容器所含的各个元素,而又无需暴露该容器的内部表示方式。有限的步骤,解决逻辑或数学上的问题,这一门学科我们叫做算法(Algorithms)。常用的容器中迭代器种类为双向迭代器,和随机访问迭代器,前三个功能没那么强大,不常用。:强调值的排序,序列式容器中的每个元素均有固定的位置。算法:各种常用的算法,如sort、find、copy、for_each等。迭代器:扮演了容器与算法之间的胶合剂。原创 2023-08-23 08:43:38 · 41 阅读 · 0 评论 -
模板(泛型编程思想)
利用具体化的模板,可以解决自定义类型的通用化,学习模板并不是为了写模板,而是在STL能够运用系统提供的模板。解决方式2:将声明和实现写到同一个文件中,并更改后缀名为.hpp,hpp是约定的名称,并不是强制。typename --- 表明其后面的符号是一种数据类型,可以用class代替。当子类继承的父类是一个类模板时,子类在声明的时候,要指定出父类中T的类型。T --- 通用的数据类型,名称可以替换,通常为大写字母。T --- 通用的数据类型,名称可以替换,通常为大写字母。原创 2023-08-23 08:00:17 · 39 阅读 · 0 评论 -
STL-常用容器-list容器(双向循环链表)
/在pos位置插入[beg,end)区间的数据,无返回值。//在pos位置插elem元素的拷贝,返回新数据的位置。//删除[beg,end)区间的数据,返回下一个数据的位置。//重新指定容器的长度为num,若容器变长,则以elem值填充新位置。//删除pos位置的数据,返回下一个数据的位置。//重新指定容器的长度为num,若容器变长,则以默认值填充新位置。//构造函数将[beg, end)区间中的元素拷贝给本身。//将[beg, end)区间中的数据拷贝赋值给本身。原创 2023-08-23 12:47:14 · 95 阅读 · 0 评论 -
STL-常用容器-map/ multimap容器(二叉树-红黑树)
Map是一种关联容器,它通过将键和值成对存储,实现了快速的键值查找。在Map中,每个键都是唯一的,而值可以重复。Map容器内部使用。原创 2023-08-23 14:16:56 · 89 阅读 · 0 评论 -
STL-常用容器-set/ multiset 集合容器(二叉树-红黑树)
所有元素都会在插入时自动被排序。原创 2023-08-23 15:41:33 · 100 阅读 · 0 评论 -
STL-常用容器-queue 容器(队列)
(First In First Out,FIFO)的数据结构,它有两个出口。队列中只有队头和队尾才可以被外界使用,因此队列不允许有遍历行为。//queue采用模板类实现,queue对象的默认构造形式。队列容器允许从一端新增元素,从另一端移除元素。功能描述:栈容器常用的对外接口。队列中进数据称为 ---队列中出数据称为 ---//从队头移除第一个元素。//返回最后一个元素。//判断堆栈是否为空。原创 2023-08-23 11:35:14 · 45 阅读 · 0 评论 -
STL-常用容器-stack容器(栈)
/stack采用模板类实现, stack对象的默认构造形式。(First In Last Out,FILO)的数据结构,它只有一个出口。栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为。功能描述:栈容器常用的对外接口。栈中进入数据称为 ---栈中弹出数据称为 ---//从栈顶移除第一个元素。//判断堆栈是否为空。原创 2023-08-23 15:52:30 · 189 阅读 · 0 评论 -
STL-常用容器-Vector容器(数组)
学习目标:vector中存放自定义数据类型,并打印输出//自定义数据类型public:mAge = age;//存放对象//创建数据it!= v.end();it++) {//*it解引用出来的是person的数据类型,看< >里是什么类型//也可以直接用it,当指针来使用//放对象指针//创建数据it!= v.end();it++) {原创 2023-08-23 11:20:39 · 65 阅读 · 0 评论 -
STL-常用容器-deque容器(双端数组)
/重新指定容器的长度为num,若容器变长,则以elem值填充新位置。//如果容器变短,则末尾超出容器长度的元素被删除。//如果容器变短,则末尾超出容器长度的元素被删除。//重新指定容器的长度为num,若容器变长,则以默认值填充新位置。//在pos位置插入一个elem元素的拷贝,返回新数据的位置。//在pos位置插入[beg,end)区间的数据,无返回值。//删除[beg,end)区间的数据,返回下一个数据的位置。//删除pos位置的数据,返回下一个数据的位置。//对beg和end区间内元素进行排序。原创 2023-08-23 16:48:07 · 41 阅读 · 0 评论 -
STL-常用容器-string容器(char*型的容器)
灵活的运用求子串功能,可以在实际开发中获取有效的信息。原创 2023-08-23 17:24:54 · 56 阅读 · 0 评论 -
STL-函数对象(仿函数)
函数对象在使用时,可以像普通函数那样调用, 可以有参数,可以有返回值。如果operator()接受一个参数,那么叫做一元谓词。函数对象超出普通函数的概念,函数对象可以有自己的状态。总结:仿函数写法非常灵活,可以作为参数进行传递。这些仿函数所产生的对象,用法和一般函数完全相同。使用重载的()时,行为类似函数调用,也叫。总结:参数只有一个的谓词,称为一元谓词。总结:参数只有两个的谓词,称为二元谓词。总结:逻辑仿函数实际应用较少,了解即可。,不是一个函数,直接调用类名来使用。函数对象(仿函数)就是一个。原创 2023-08-24 07:16:17 · 56 阅读 · 0 评论 -
STL-常用算法-排序
sort属于开发中最常用的算法之一,需熟练掌握。原创 2023-08-24 07:15:42 · 42 阅读 · 0 评论 -
STL- 常用算法-查找
二分查找法查找效率很高,值得注意的是查找的容器中元素必须的。原创 2023-08-24 07:15:55 · 46 阅读 · 0 评论 -
STL- 常用算法-遍历
算法主要是由头文件。原创 2023-08-24 07:16:05 · 30 阅读 · 0 评论 -
STL-常用算法-拷贝和替换
利用copy算法在拷贝时,目标容器记得提前开辟空间。原创 2023-08-24 10:00:47 · 42 阅读 · 0 评论 -
STL-常用算法-集合
求交集的两个集合必须的有序序列目标容器开辟空间需要从。原创 2023-08-24 10:07:59 · 45 阅读 · 0 评论 -
STL-常用算法-算术生成
accumulate使用时头文件注意是 numeric,这个算法很实用。原创 2023-08-24 10:03:11 · 72 阅读 · 0 评论