
STL库函数
Ginsn
放弃很容易,但坚持一定很酷
展开
-
【Containers】vector
简述向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。 Vector 是C++标准程序库中的一个类,可视为会自动扩展容量的数组,以循序(Sequential)的方式维护变量集合。vector的特色有支持随机存取,在集合尾端增删元素很快,但是在...转载 2018-08-10 08:17:25 · 271 阅读 · 0 评论 -
【Iterators】iterator迭代器
简述迭代器(iterator)有时又称游标(cursor)是程式设计的软件设计模式,可在容器物件(container,例如链表或阵列)上遍访的界面,设计人员无需关心容器物件的内存分配的实现细节。各种语言实作迭代器的方式皆不尽同,有些面向对象语言像Java, C#, Ruby, Python, Delphi都已将迭代器的特性内建语言当中,完美的跟语言整合,我们称之隐式迭代器(implicit...原创 2018-08-11 12:37:00 · 321 阅读 · 0 评论 -
【Containers】priority_queue 优先队列
简述priority_queue(优先队列)是容器适配器,它提供常数时间的(默认)最大元素查找,对数代价的插入与释出。可用用户提供的 Compare 更改顺序,例如,用 std::greater<T> 将导致最小元素作为 top()出现。用 priority_queue 工作类似管理某些随机访问容器中的堆,优势是不可能突然把堆非法化。简单来说priority_queue就是ST...原创 2018-08-12 19:34:20 · 436 阅读 · 0 评论 -
【Containers】stack
简述栈(stack)又称为栈或堆叠,是计算机科学中一种特殊的串列形式的抽象数据类型,其特殊之处在于只能允许在链表或数组的一端(称为堆栈顶端指针,英语:top)进行加入数据(英语:push)和输出数据(英语:pop)的运算。另外栈也可以用一维数组或链表的形式来完成。堆栈的另外一个相对的操作方式称为队列。由于堆栈数据结构只允许在一端进行操作,因而按照后进先出(LIFO, Last In Fir...原创 2018-08-13 09:16:58 · 421 阅读 · 0 评论 -
【Containers】queue
简述队列,又称为伫列(queue),是先进先出(FIFO, First-In-First-Out)的线性表。在具体应用中通常用链表或者数组来实现。队列只允许在后端(称为rear)进行插入操作,在前端(称为front)进行删除操作。队列的操作方式和堆栈类似,唯一的区别在于队列只允许新数据在后端进行添加。特点先入先出,后入后出。 除头尾节点之外,每个元素有一个前驱,一个后继。基...原创 2018-08-13 09:44:44 · 312 阅读 · 0 评论 -
C++ string 字符串函数详解
C++ string 字符串函数详解原文地址:https://www.renfei.org/blog/introduction-to-cpp-string.html运算符重载+ 和 +=:连接字符串 =:字符串赋值 >、>=、< 和 <=:字符串比较(例如a < b, aa < ab) ==、!=:比较字符串 <<、>>...转载 2018-12-01 17:57:45 · 360 阅读 · 0 评论