C++ STL map容器如何获取值(value)? 在基本掌握map容器及其迭代器的基础下,本节将带领读者一起谈论如何获取map中的value。前面我们提到map重载了'[]'符号,能够通过'[]'添加或查看value;还有find()输入key获取指向value的迭代器;其实我们还能通过at()来获取value,count()查看value是否存在。通过代码分别展示3种方式:#include<bits/std STL有序关联式容器 2025年10月07日 0 点赞 0 评论 953 浏览
C++ STL deque容器如何访问元素? 前面我们讨论过怎么访问vector内容器,其实deque容器访问元素方法与前者一样非常相似,都可以通过'[]'、迭代器、以及back()和front()来访问元素,不同点在于deque没有data()指针也不支持函数模板get()<T>访问,学过的3种序列式容器里只有array容器支持。原因在于函数模板get()<T>访问元素要求容器在编译时固定数组序列,d STL序列式容器 2025年10月05日 0 点赞 0 评论 1022 浏览
C++ STL容器简介 STL容器是C++标准模板库中用于存储和管理数据集合的通用数据结构模板类。可以把它们想象成各种规格的“智能储物箱”,每个箱子都有自己独特的存放和取用规则。这些容器大大简化了程序员的数据管理工作量——不需要从零开始实现链表、栈、队列这些基础数据结构,而是直接使用现成的模板类。比如vector就像可以自动扩容的动态数组,list如同可以高效插入删除的双向链表,map则提供了键值对的快速查找能力。所有S STL序列式容器 2025年10月01日 2 点赞 0 评论 1057 浏览
C++ STL分区算法std::partition_copy()函数入门 上一节我们学习了partitioin()函数和stable_partition()函数,读者是否能够记起它们的功能以及对他们进行区分呢?本节我们将继续进行分区算法——partition_copy()函数的学习。该函数与前面两个函数大不相同,究其根本是partition_copy()函数能够保证不破破坏原序列,并且把分区后的元素复制到新的两个序列里。比如原序列是{1,2,3,4,5,6,7,8,9, C++常用算法(一) 2025年10月24日 0 点赞 0 评论 855 浏览
C++ STL priority_queue适配器入门 priority_queue适配器,又被称为“优先队列”,priority意为“优先权”,这里的priority指的是适配器会将所有元素中权值最高的元素置于顶部(默认是权值最高,但是我们可以通过仿函数来更改规则),以展现优先级。同时优先队列没有FIFO(先入先出)这个规则,插入元素是通过push(),删除元素是通过pop(),不能进行随机元素访问,能且仅能操作堆顶元素top(),同队列相比有很大的 STL容器适配器 2025年10月18日 0 点赞 0 评论 920 浏览
C++ STL容器适配器简介 什么是容器适配器?首先我们需要知道,容器适配器并不属于STL容器,因为它是在已有容器的基础上进行自主设计的。就像笔记本的电源适配器,把220V的电压转化为12-20V不等的电压供笔记本使用;就像读者出国旅游,如果外语不算很流利通过翻译软件跟外国人聊天一样,翻译软件就充当这个适配器的功能。适配器简单来说就是把已有的东西添加一些功能或限制一些接口一样,实现满足需求的目的。在掌握STL容器的基础下,我们 STL容器适配器 2025年10月16日 0 点赞 0 评论 848 浏览
C++ STL map容器入门 前面我们学习了pair模板类——《初识模板类pair》是为了本节学习map作准备。map作为有序关联式容器,其通过pair模板的形式存储元素,并根据key值(指pair中的first)进行自动排序,排序默认是升序,但我们也可以通过仿函数实现降序排序,值得注意的是,map的键值具有唯一性,不允许出现重复键值。接下来我们通过代码来了解如何创建map容器:#include<bits/stdc++. STL有序关联式容器 2025年10月07日 0 点赞 0 评论 981 浏览
C++ STL容器有哪些常用成员函数和成员变量? 使用STL需要我们了解容器及其对应的成员函数和成员变量,不求全部背诵,但是要有个印象,方便文档查询和算法使用,下表罗列了算法竞赛中STL常用函数和变量:类别名称功能说明适用容器容量相关size()返回当前元素个数全部容器empty()判断容器是否为空全部容器max_size()返回容器可容纳的最大元素数全部容器capacity()返回当前分配的内存容量(仅vector/string)vector, STL序列式容器 2025年10月01日 1 点赞 0 评论 889 浏览
C++ STL排列组合算法std::is_permutation()函数入门 上一节我们学习了排列组合算法——prev_permutation()函数,读者是否还记得它的功能是什么吗?没错,该函数以降序排序作为起点,生成上一个更小排列。本节我们将学习判断是否为排列组合算法——is_permutation()函数。"permutation"表示"置换",这里is_permutation()函数的功能是否互为彼此的排列组合,比如我们有两个 C++常用算法(二) 2025年10月26日 0 点赞 0 评论 886 浏览
C++ STL 排序算法std::sort()函数入门 在实际工作学习中,我们经常需要对容器进行排序,比如我们用一个vector容器来维护Dotcpp编程的用户,当用户刷新排名界面时,我们就需要对vector容器根据用户刷题量来进行排名了。看到“排序”这两个字,相信读者脑海里一定有这些词一闪而过:冒泡排序、选择排序、插入排序、归并排序、快排、堆排等排序算法。我相信读者能够通过这些基本算法来对vector容器进行排序,只不过效率有点慢,所以今天我们要介绍 C++常用算法(一) 2025年10月21日 1 点赞 0 评论 1052 浏览