STL
文章平均质量分 74
林陌青川
这个作者很懒,什么都没留下…
展开
-
【STL】unordered_set容器
/ 头文件是一个无序集合容器,其中的元素是唯一的,与插入的顺序无关。使用哈希表实现,查找、插入和删除的平均时间复杂度为 O(1)。与 Set 不同,不进行元素的排序。原创 2023-12-31 20:24:28 · 375 阅读 · 0 评论 -
【STL】map容器
/ 头文件#include // 主要应用场景--键值对映射map是一个关联容器,其中的元素是键值对,键和值都可以是任意类型。map中的元素按照键的大小进行排序(默认升序)。multimap与map的区别在于,multimap允许键相同的元素存在。int id;原创 2023-12-31 20:22:57 · 373 阅读 · 0 评论 -
【STL】set容器
/头文件#include //主要应用场景--去重set是一个集合容器,其中所包含的元素是唯一的,集合中的元素按一定的顺序排列默认升序) ,元素插入过程是按排序顺序规则插入,所以不能指定插入位置set采用红黑树变体的数据结构实现,红黑树属于平衡二叉树,在插入和删除的操作上比vector快。(log2(n ))set不可直接存取元素。(不可使用at.(pos)和[pos]操作符)。multiset和setset支持唯一键值,每个元素值只能出现一次;而multiset。原创 2023-12-31 20:21:25 · 346 阅读 · 0 评论 -
【STL】queue容器
优先队列(Priority Queue),它维护一组元素,并根据元素的优先级确定它们的顺序。在优先队列中,每个元素都有一个相关的优先级,较高优先级的元素在队列中被处理得更早。由于是优先队列,移除的是具有最高优先级的元素。注意,这个操作不返回被移除的元素,如果需要获取被移除的元素,可以首先使用。元素将根据其优先级被正确排序,使得队列的最前面是具有最高优先级的元素。函数返回优先队列的顶部元素,但不会移除它。(队列),是一种**“先进先出,后进后出”**的容器。函数返回优先队列中元素的数量。原创 2023-12-31 20:19:19 · 381 阅读 · 0 评论 -
【STL】stack容器
不能遍历,只能不断地出栈访问栈顶。 对栈的高级封装, 是一种“”的容器,对栈的操作都在栈顶。原创 2023-12-31 20:16:14 · 359 阅读 · 0 评论 -
【STL】List容器
容器特性list 是一个双向链表,可以高效的插入删除元素list 不可以随机存取元素,所以不支持 list.at(target) 和 list[target] 操作符单次移动1.list容器的构造默认构造带参构造2.list赋值3.list头部尾部添加移除操作4.list的迭代器 list 的迭代器是双向迭代器 ,可以从两个方向来读写容器。5.list大小6.list容器的插入 list 是不连续容器,插入操作不会导致迭代器失效7.list容器的删除8.反原创 2023-12-30 02:00:38 · 455 阅读 · 0 评论 -
【STL】Deque容器
deque d;at(index):返回指定索引位置的元素,抛出越界异常。operator[]:返回指定索引位置的元素,不进行越界检查。front():返回第一个元素的引用。back():返回最后一个元素的引用。:在尾部插入元素。:在头部插入元素。pop_back():移除尾部元素。:移除头部元素。:在尾部原地构造元素。:在头部原地构造元素。size():返回容器中元素的个数。empty():检查容器是否为空。:改变容器的大小,可以增加或减少元素。clear()原创 2023-12-30 01:58:42 · 814 阅读 · 1 评论 -
【STL】迭代器Iterator
用于访问容器内部元素(简化操作),每个容器都有一个Iterator实质可以理解为指针。原创 2023-12-27 03:13:58 · 330 阅读 · 1 评论 -
【STL】Vector容器
插入和删除 尾插(删)速度快,中间插入(删)速度慢(需要把插入部分后的全部后移) 可以用下标法 [target],或者**at(target)**进行访问,尽量使用at(),越界了会抛出越界信息原创 2023-12-27 01:32:24 · 501 阅读 · 2 评论