STL
文章平均质量分 89
TT在长大
Stay hungry, Stay foolish.
展开
-
[C/C++]详解STL容器9-基于红黑树模拟实现map和set
本文基于红黑树模拟实现map和set,首先对之前模拟实现的红黑树做了一些改造,之后对map和set做了模拟实现。原创 2021-12-05 20:04:01 · 13689 阅读 · 4 评论 -
[C/C++]详解STL容器8-map、multimap、set、multiset的介绍和使用
本文介绍了map、multimap、set、multiset以及使用方法。原创 2021-12-02 22:02:24 · 4546 阅读 · 6 评论 -
[C/C++]详解STL容器7--红黑树的介绍及部分模拟实现
本文对红黑树进行了介绍,并对其核心功能进行了模拟实现。红黑树(Red Black Tree),是在计算机科学中用到的一种数据结构,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长出俩倍,因而是接近平衡的。原创 2021-12-01 17:36:50 · 7536 阅读 · 0 评论 -
[C/C++]详解STL容器6--AVL树的介绍及部分模拟实现
本文对AVL树进行了介绍,并对其核心功能进行了模拟实现。二叉搜索树虽可以缩短查找的效率,但如果数据有序或接近有序二叉搜索树将退化为单支树,查找元素相当于在顺序表中搜索元素,效率低下。因此,两位俄罗斯的数学家G.M.Adelson-Velskii和E.M.Landis在1962年发明了一种解决上述问题的方法:当向二叉搜索树中插入新结点后,如果能保证每个结点的左右子树高度之差的绝对值不超过1(需要对树中的结点进行调整),即可降低树的高度,从而减少平均搜索长度。原创 2021-11-22 00:32:20 · 12679 阅读 · 1 评论 -
[C/C++]详解STL容器5--二叉搜索树的介绍及模拟实现
本文对二叉搜索树进行介绍,并对其核心功能进行了模拟实现。原创 2021-11-18 22:59:53 · 4354 阅读 · 7 评论 -
[C/C++]详解STL容器4--stack、queue和priority_queue的功能和模拟实现,deque和容器适配器的介绍
本文介绍了stack、queue和priority_queue的常用接口的使用,并对其进行了模拟实现,还对deque和容器适配器进行了介绍。一、stack的功能和模拟实现1.stack的介绍stack<T>容器适配器中的数据是以 LIFO 的方式组织的,是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作。作为容器适配器被实现的,容器适配器即是对特定类封装作为其底层的容器,并提供一组特定的成员函数来访问其元素,将特定类作为其底原创 2021-09-25 11:33:05 · 2642 阅读 · 3 评论 -
[C/C++]详解STL容器3--list的功能和模拟实现(迭代器失效问题)
本文介绍了list的常用接口的使用,并对其进行了模拟实现,包括list迭代器的实现。目录一、list的介绍二、list的常用接口的使用1. list的构造2. list iterator的使用3.list capacity的使用4.list element access5.list modifiers6. list的迭代器失效三、list与vector的对比四、list的模拟实现一、list的介绍list 容器,又称双向链表容器,即该容器的底层是以双向链表原创 2021-09-24 10:22:56 · 4463 阅读 · 14 评论 -
[C/C++]详解STL容器2--vector的功能和模拟实现(迭代器失效,memcpy拷贝问题)
本文介绍了vector类的常用接口的使用,并对其进行了模拟实现,对模拟实现中涉及到的迭代器失效问题,memcpy拷贝问题进行了解析。一、vector类向量(Vector)是一个封装了动态大小数组的顺序容器(SequenceContainer)。在C++中,vector 是一个十分有用的容器。它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。就像数组vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector.原创 2021-09-23 16:33:51 · 5062 阅读 · 11 评论 -
[C/C++]详解STL容器1--string的功能和模拟实现(深浅拷贝问题)
本文介绍了string类的常用接口的使用,并对其进行了模拟实现,对模拟实现中涉及到的深浅拷贝问题进行了解析。目录一、string类1. C语言中的字符串2. C++中的string类二、string类的常用接口的使用1. string类对象的常见构造2. string类对象的容量操作3. string类对象的访问及遍历操作4.string类对象的修改操作5. string类非成员函数6.使用实例三、模拟实现1. sring类的深浅拷贝问题2. ...原创 2021-09-22 11:27:39 · 5145 阅读 · 3 评论