![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STL
、Edgar
Coding with fun
展开
-
Standard Template Library ~priority_queue
在STL中,有一个优先级队列的类模板priority_queue,它包含在头文件queue中。这个类模板是用二叉堆实现的。类模板priority_queue是一个容器适配器,它有三个模板参数:队列中的元素类型,底层存储二叉堆的容器类型、最大堆还是最小堆。第二、三个参数是保存在vector中。第三个参数默认是最大堆,即数值越大,优先级越高。主要成员函数有: (1) void push(con...原创 2019-07-07 11:23:50 · 77 阅读 · 0 评论 -
Standard Template Library ~string
C++提供了一个处理字符串的标准类,它被定义在string里面,string类的对象可以通过C++的运算符进行操作,使用string是必须包括头文件string string类对象可以用构造函数进行初始化,例如: string s1("hello, world"); string s2="hello, world"; 当然的话,也可以定义一个空字符 string类中重载了=、+、...原创 2019-06-17 21:08:57 · 113 阅读 · 0 评论 -
Standard Template Library ~queue
队列是应用最广泛的数据结构之一,很多应用都是基于队列实现的。如系统中各种资源的调度,现实生活中排队系统的模拟等都需要用到队列。为此,C++在其标准模板库中实现了队列类,C++程序员在编程中需要用到队列时可以直接使用标准的模板库中的队列类。 与栈类似,队列本质上也是一个线性表,STL中的队列类是一个容器适配器,它是借助于list或者deque类实现的。STL中的队列提供了6个标准运算:入队操作pu...原创 2019-05-03 10:00:05 · 128 阅读 · 0 评论 -
Standard Template Library ~ stack
栈是运用最广泛的数据结构之一,许多结构都基于栈来实现。如程序中函数的调用,表达式的计算以及检查程序中各种括号是否配对等都是依靠栈来实现的。为此,C++在它的标准模板库中实现了栈类,使C++程序员在编程中需要使用栈的时候不需要自己来实现栈类,而只需要使用标准库中的栈类便可。 STL中的栈提供4个标准运算:push(进栈),top(返回栈顶元素),pop(出栈),empty(判断是否为空栈)。栈本质...原创 2019-05-02 09:40:18 · 102 阅读 · 0 评论 -
Standard Template Library ~ vector + list + deque
STL中的线性表有3种实现:顺序实现vector,双链表的实现list和优化实现deque。这些类都可以用迭代器来访问。由于每个类的实现方式是不同的,因此这些类对应的迭代器类的实现也是不同的。为了便于用户使用,STL将迭代器类定义为相应容器内的公有的内嵌类,并且对于所有的迭代器,他们的类名都是相同的。因此,用户不需要分别记忆某个类的迭代器的类名是什么。每个容器提供两个迭代器类:iterator和c...原创 2019-05-01 16:10:24 · 107 阅读 · 0 评论