模拟实现

2024/4/12 23:56:33

C++Vector类详解

目录 1.Vector介绍 2.Vector的常见使用 2.1 vector构造函数 2.2 vector iterator使用 2.3 vector空间增长问题 2.4 vector增删改查 2.5 vector迭代器失效问题 3.Vector深度剖析及模拟实现 3.1 模拟实现(可跳过) 3.2 不使用memcpy剖析 1.Vector介绍 ve…

【Java】栈和队列的模拟实现(包括循环队列)

异常为空栈异常: public class EmptyStackException extends RuntimeException {public EmptyStackException(){}public EmptyStackException(String msg){super(msg);}}循环队列: class MyCircularQueue {public int[] elem;public int front;//队…

智能指针的使用以及模拟实现

文章目录 智能指针内存泄漏智能指针的使用和原理 C98/C11智能指针auto_ptrunique_ptrshared_ptrweak_ptr 删除器总结 智能指针 在C语言中,我们初识了指针这一概念,在C中,我们不断对于指针进行研究和使用,指针的存在是C/C的一大特…

【C++】红黑树模拟实现STL中的map与set

红黑树里面具体存的是什么类型的元素&#xff0c;是由模板参数 T 来决定&#xff1a; 如果 T 是 Key 那么就是 set。 如果 T 是 pair<const Key, V>&#xff0c;那么就是 map。 1、定义红黑树的节点结构 // 定义红黑颜色 enum Colour {RED,BLACK };template<class …

C语言之strstr函数的使用和模拟实现

C语言之strstr函数的模拟实现 文章目录 C语言之strstr函数的模拟实现1. strstr函数的介绍2. strstr函数的使用3. strstr的模拟实现3.1 实现思路3.2 实现代码 1. strstr函数的介绍 函数声明如下&#xff1a; char * strstr ( const char * str1, const char * str2 ); strs…

【数据结构】 LinkedList的模拟实现与使用

文章目录 &#x1f340;什么是LinkedList&#x1f334;LinkedList的模拟实现&#x1f6a9;创建双链表&#x1f6a9;头插法&#x1f6a9;尾插法&#x1f6a9;任意位置插入&#x1f6a9;查找关键字&#x1f6a9;链表长度&#x1f6a9;打印链表&#x1f6a9;删除第一次出现关键字为…

【数据结构】 队列(Queue)与队列的模拟实现

文章目录 &#x1f340;队列(Queue)的概念&#x1f38b;队列的使用&#x1f38d;队列的模拟实现&#x1f6a9;创建队列&#x1f6a9;入队列&#x1f6a9;出队列&#x1f6a9;获取队头元素&#x1f6a9;获取队列长度&#x1f6a9;判断是否为空&#x1f6a9;完整代码 &#x1f33…