![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++ STL
丶小哲c
这个作者很懒,什么都没留下…
展开
-
Vector
vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。 在竞赛中,如使用邻接矩阵时可能会不知道开多大的数组合适,而使用链表来操作会使代码过于累赘,调试辛苦,这时使用Vector是原创 2014-03-13 17:59:20 · 695 阅读 · 1 评论 -
Queue
队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。 竞赛中队列这种数据结构用的很广泛,许多算法都要以队列作为基础来实现。手动编写队列虽然不难,但往往会使用较大的空间;如果使用循环队列,代码可读性就会降低,并且可能遇到需要操作的元素数比数组原创 2014-03-13 21:37:21 · 346 阅读 · 0 评论 -
Stack
栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据。栈是只能在某一端插入和删除的特殊线性表。 Stack库在竞赛中并没有太大的作用,仅仅作为增强代码可读性的工具。Stack 的使用#include using name原创 2014-03-13 21:20:44 · 345 阅读 · 0 评论 -
priority_queue
优先队列(Priority_Queue)中,元素被赋予优先级。当访问元素时,具有最高优先级的元素最先删除。优先队列具有最高进先出 (largest-in,first-out)的行为特征。 优先队列是竞赛中常见的数据结构,其本质是一棵完全二叉树(不是队列哈~),如何维护不解释,这里仅说明Priority_Queue的使用。Queue 的使用#include u原创 2014-03-13 21:48:58 · 301 阅读 · 0 评论 -
Set & Multiset
一个集合(set)是一个容器,它其中所包含的元素的值是唯一的。这在收集一个数据的具体值的时候是有用的。集合中的元素按一定的顺序排列,并被作为集合中的实例。一个集合通过一个链表来组织,在插入操作和删除操作上比向量(vector)快,但查找或添加末尾的元素时会有些慢。具体实现采用了红黑树的平衡二叉树的数据结构。原创 2014-05-18 20:34:01 · 411 阅读 · 0 评论