容器简单模拟
文章平均质量分 92
实践出真知~
悄悄敲敲敲
fw一个
展开
-
C++ priority_queue的使用与简单实现
1. 是一种容器适配器2.优先使用vector作为其底层存储数据的容器。3. 使用了堆算法将vector中元素构造成堆的结构,所以priority_queue类似于堆,用的到堆的地方都可以考虑使用priority_queue。4.默认情况下priority_queue建立的是大堆。5.使用时只需包含#include<queue>即可其底层容器需要支持随机访问迭代器(Random-access iterators)以便自身在内部始终保持堆结构。这些由容器适配器自动完成,通过自动调用算法函数。原创 2024-08-17 13:47:10 · 744 阅读 · 0 评论 -
C++ stack与queue的使用与简单实现
是一个容器适配器,提供了后进先出(或先进后出)的数据结构,其元素仅能从容器的一端插入和提取。使用特定容器类的封装对象作为其底层容器的类,提供一组特定的成员函数来访问其元素。元素从特定容器的背面出栈队列是一种容器适配器,专门用于先进先出中操作,从容器一端插入元素,另一端提取元素。队列作为容器适配器实现,容器适配器即将特定容器类封装作为其底层容器类,queue提供一组特定的成员函数来访问其元素。元素从队尾入队列,从队头出队列。原创 2024-08-15 22:07:12 · 1030 阅读 · 2 评论 -
list 简单模拟实现
第一个会返回值的引用,第二个会返回值的地址,所以存储类的话可以通过这个来访问类的成员。我们发现const的实现与普通迭代器的实现基本相同就是多了一些const限定符。注意后置的++与--不可以返回引用因为我们是用一个临时的对象记录下来原来的值。我们可以从两个类的成员函数不同的返回值入手将不同的返回值变为模板其他参数。(此处也可以直接用struct,因为这个类成员变量是都可以访问的)head为哨兵位,我们分别实现了,无参默认构造,拷贝构造函数。这个类中存储节点的值,下一个节点的地址与上一个节点的地址。原创 2024-08-11 23:02:11 · 599 阅读 · 4 评论 -
vector 简单模拟实现
元素,并且自定义类型元素中涉及到。原创 2024-08-05 21:49:58 · 726 阅读 · 9 评论 -
string类简单模拟实现
我们实现string将其封装到一个namespace(命名空间中)原创 2024-07-31 22:21:49 · 1210 阅读 · 11 评论