STL(standard template libaray - 标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算...
队列的头文件下有两个队列,一个叫普通队列,一个叫优先级队列,优先级队列更复杂一些,其底层的结构就是堆
1. 优先队列是一种容器适配器,根据严格的弱排序标准,它的第一个元素总是它所包含的元素
1. 队列是一种容器适配器,专门用于在FIFO上下文(先进先出)中操作,其中从容器一端插入元
1. begin 与 end 为正向迭代器,对迭代器执行 ++ 操作,迭代器向后移动
在早期C/C++中auto的含义是:使用auto修饰的变量,是具有自动存储器的局部变量,后来这个
通过前面的学习,我们知道emplace_back和push_back的区别其实不是很大,真正的区别就是:
前面我们已经接触过STL中的部分容器,如:string、vector、list、deque、array、forward_list等,这些容器统称为序列式容器,因...
map和set底层结构比较复杂,我认为我们先谈基本介绍再谈C++11,最后再谈map和set底层以及map和set封装。
list的实现,还是比较简单的,大家只要想着土家楼的形状,画出图来就好了,不需要过多担心。本次的博客会发出一个完整的实现List的List.hp...
C++非常重视效率,对效率有损失的代码常常是能省则省。使用list要包含的头文件是<list>,要包含头文件就是#iinclude <list>,List...
本文将带你穿越C++容器的迷雾森林:从vector动态扩容的数学玄机,到emplace_back比push_back快在哪的微观真相;从红黑树与哈希表的世纪对决...
优先队列使用vector作为底层容器,并且在vector中加入堆算法,将vector构造成了一个堆,所以可以说优先队列就是一个堆,所以在碰见堆的时候就要想到优先...
因为我们是将stack写成一个自定义类型,所以构造函数、析构函数都不需要我们自己写,编译器会自动调用。
在开始讲解list的常见接口之前,我们先来了解一下list中的迭代器:list中的指针是一个自定义类型的指针,该指针指向list中的某一个节点。
问题引入 在上一篇文章中我们详细讲解了vector的常见接口及其模拟实现,大家可以自行参阅:【C++】STL--Vector使用极其模拟实现,但是我们在接口...
vector在日常的使用非常广泛,我们应该熟悉它的常用接口。接下来我们从基础的接口开始,学会它的使用及模拟实现。
前言:在上一篇文章中,我们介绍了二叉搜索树这种树形结构,它与之前学过的序列式容器有所不同。本文将重点讲解基于二叉搜索树实现的另外一个容器:map。它的底层实现...
前言:在上一篇文章中,我们介绍了二叉搜索树这种树形结构,它与之前学过的序列式容器有所不同。本文将重点讲解基于二叉搜索树实现的两个容器之一:set。它的底层实现...