STL
  • 2024-07-02C++ STL 优先队列 (priority_queue)
    std::priority_queue<queue>优先队列  1、第一个元素始终为最大元素。  2、有着类似于堆的特性,它可以在其中随时插入元素。  3、支持下标访问(随机访问迭代器)优先队列内部的实现需要依赖基础容器,该容器应可通过随机访问迭代器访问,并需要支持以下操作empty()si
  • 2024-06-22C++ STL容器操作:6种常用场景算法
    C++STL容器操作:6种常用场景算法    •   引言   •   概述   •   查找与计数   ▪   std::find   ▪   std::find_if   ▪   std::find_if_not   ▪   std::find_end   ▪   std::find_first_of
  • 2024-06-21【C++高阶】探索STL的瑰宝 map与set:高效数据结构的奥秘与技巧
  • 2024-06-10深入STL之 栈与队列:数据结构探索之旅
  • 2024-06-09【知识点】C++ STL 中的 iterator_traits 类
    iterator_traits讲解基本定义iterator_traits是一个模板类,用于提供与迭代器相关的类型信息。以下是iterator_traits的基本定义:#include<iterator>template<typenameIterator>structiterator_traits{typedeftypenameIterator::difference_typediffere
  • 2024-06-08【C++/STL】list(常见接口、模拟实现、反向迭代器)
     
  • 2024-06-08C++:Traits编程技法在STL迭代器中的应用
    文章目录迭代器相应型别Traits(特性)编程技法——STL源代码门钥迭代器相应型别一:value_type迭代器相应型别二:difference_type迭代器相应型别三:reference_type迭代器相应型别四:pointer_type迭代器相应型别五:iterator_category以`advanced()`为例取消单纯传递调用的函数以`
  • 2024-06-07C++STL---list模拟实现
    本文我们模拟实现STL中的list,为了模拟实现list,实际上我们需要实现三个类,分别为:_list_node,_list_iterator,list。我们先看一下这三个类的基本组成,主要是看看每个类中包含的变量有什么:namespaceCYF{ //模拟实现list当中的结点类 template<classT> struct_list_node
  • 2024-06-07小白的面试题之路——STL库
    一、基本排序方法介绍首先,我们需要了解基本的排序以及时间复杂度:比如冒泡排序(On^2),选择排序(On^2),插入排序(On^2),希尔排序(nlogn),归并排序(nlogn),快速排序(nlogn),堆排序(nlogn),桶排序(n+k)。以冒泡排序举例,随便排一个100000的数组就超时了,因此我们要尽量避免使用冒泡排序,优先考虑快速排序
  • 2024-06-07【C++进阶】深入STL之list:高效双向链表的使用技巧
  • 2024-06-05STL之vector
    1.STL简介 STL(standardtemplatelibaray-标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。顾名思义,STL可以实现许多基础数据结构以及算法STL中的vector便是今天的主角(掌声欢迎)2. vector使用说明你在写
  • 2024-06-03取STL最大连通区域并写入体积信息python实现
    importtrimeshimportnumpyasnpimportargparsefromstlimportMeshdefmain(input_file,output_file,num,volume_info):#加载STL文件your_mesh=trimesh.load_mesh(input_file)#分割成连通域connected_components=your_mesh.split()#
  • 2024-06-01STL库的ranges
    STL库的ranges在C++STL标准库的<ranges>(C++20中引入)中,定义了一套全面的关于范围的概念、类、模板、函数以及其他相关组件,旨在提高对元素序列的抽象化处理能力。主要包括以下几个方面:范围(Range):定义了一系列标准要求,规定了怎样的对象可被视为一个范围。视图(Views):提供了一系列轻
  • 2024-06-01【C++进阶】深入STL之string:掌握高效字符串处理的关键
  • 2024-06-01C++常用STL容器
    备注:文中图片来自hackingcpp.vectorvector是C++中最常用的容器,它可以动态改变自身大小。dequelist(双向链表)forward_list(单向链表)unordered_setsetunordered_mapmap
  • 2024-05-30STL两级空间适配器
    为什么需要两级空间适配器?因为我们如果频繁的再堆上面申请内存释放内存,就会在堆上面造成很多的外部碎片,造成空间浪费,每次都要调用malloc、free函数,降低空间利用率。一级空间适配器:当申请内存>128bytes的时候就用一级空间适配器。(malloc、free、realloc等方法)二级空间适配器:当
  • 2024-05-28RC-u2-2023【STL-string】
    Raicom-2023省赛题目~题意:A:最近出了一个饮料营养等级你们知道吗?例如无糖的饮料是A级,可乐是D级……B:那……无糖可乐是什么级别?C:AD级吧。A:出院!B:出什么院,你也给我进去!以上是某群中一段有趣的对话。请你按照里面的逻辑,在已知某些饮料的等级的情况下,给饮料定级。定级的
  • 2024-05-27【C++/STL】vector(常见接口、模拟实现、迭代器失效)
     
  • 2024-05-26【知识点】深入浅出STL标准模板库
    前几天谈论了许多关于数论和数据结构的东西,这些内容可能对初学者而言比较晦涩难懂(毕竟是属于初高等算法/数据结构的范畴了)。今天打算来讲一些简单的内容-STL标准模板库。STL标准模板库C++标准模板库(StandardTemplateLibrary,STL),是C++语言非常重要的一个构成部分
  • 2024-05-26C++ STL 函数对象:隐藏的陷阱,如何避免状态带来的麻烦?
    STL函数对象:无状态即无压力一、简介二、函数对象三、避免在函数对象中保存状态3.1、函数对象3.2、lambda表达式四、选择合适的更高层次的结构五、总结一、简介在使用C++标准模板库(STL)时,函数对象(FunctionObject)是一种强大的工具,它可以帮助你编写更具表
  • 2024-05-25AcWing 3466. 清点代码库(STL:map,vector)
    3466.清点代码库需要求有几种不同数列,每种有多少个,可以想到用map。它的键是一个数列,可以把它放在vector里。也就是map<vector<int>,int>要满足要求的输出序列,就要想把它放在其他容器,或数组里,进行排序。因为map不能自定义排序,而且既要对值排序,还要对键排序。我起初是定
  • 2024-05-25C++初阶学习第九弹——探索STL奥秘(四)——vector的深层挖掘和模拟实现
    string(上):C++初阶学习第六弹——探索STL奥秘(一)——标准库中的string类-CSDN博客string(下):C++初阶学习第七弹——探索STL奥秘(二)——string的模拟实现-CSDN博客vector(上):C++初阶学习第八弹——探索STL奥秘(三)——深入刨析vector的使用-CSDN博客前言:在前面我们已经学习了string的
  • 2024-05-25第17章 STL动态数组类
    1std::vector的特点vector是一个模板类,提供了动态数组的通用功能:在数组尾部插入元素时间是固定的在数组中间添加或删除元素所需时间与改元素后面的元素个数成正比存储的元素数是动态的,vector类负责管理内存vector是一种动态数组,结构体如下:2vector操作2.1实例化vector
  • 2024-05-24STL 以及 C语言与C++的区别
    C++语言的标准库(STL)容器(Containers)vector:动态数组,可以动态增长和收缩,支持快速随机访问元素。list:双向链表,支持在任意位置快速插入和删除元素。map:关联容器,以键值对(key-value)形式存储元素,支持快速查找和插入。竞赛常用C++STL用法https://io.zouht.com/154.htmlv
  • 2024-05-24Educator:C++面向对象-STL实训
    第1关:病毒复制任务描述本关任务:设计一个病毒类。相关知识本关涉及到的内容如下:拷贝构造函数重载!=和==运算符拷贝构造函数当一个构造函数的唯一一个参数就是它所在类的引用时,这个构造函数就是一个拷贝构造函数编程要求设计一个病毒Virus类,它的内部有一个Gen变量,代表