- 博客(78)
- 收藏
- 关注
原创 【Linux】Linux下基本指令
前言学完C++基础知识,也实现了Linux的环境,接下来我们就正式迈入Linux的学习中,首先我们来看下一些Linux下的基础指令若有问题 评论区见📝。
2025-02-18 14:17:25
1239
原创 【C++】用哈希表封装myunordered_map和myunordered_set
前言本篇博客我们来用哈希表模拟实现一下STL库里的unordered_map与unordered_set若有问题 评论区见📝。
2024-12-20 22:28:55
666
原创 【C++】哈希表的实现
前言本篇博客我们来仔细了解下unordered_map与unordered_set的底层哈希表,哈希表到底是什么那,今天我们就来讨论清楚若有问题 评论区见📝。
2024-12-19 21:22:46
1039
原创 【C++】unordered_map与unordered_set使用
前言本篇博客我们来看一下unordered_map与unordered_set的使用,了解一下它们的原理若有问题 评论区见📝。
2024-12-07 20:17:16
770
1
原创 【C++】封装红黑树实现的map和set
源码及框架分析前言这篇博客我们将上篇博客实现的红黑树来封装成自己实现的set和map,来模拟一下库里的map和set若有问题 评论区见📝。
2024-12-01 20:04:02
1096
原创 【C++】AVL树
前言本篇博客我们来看一下特殊的搜索二叉树——AVL树,在认识红黑树之前,我们一起来看下AVL这类树有什么特性,以及代码实现若有问题 评论区见📝。
2024-10-25 21:55:15
974
原创 【C++】map和set使用
set的声明如下,T就是set底层关键字的类型set默认要求T⽀持⼩于⽐较,如果不⽀持或者想按⾃⼰的需求⾛可以⾃⾏实现仿函数传给第⼆个模版参数set底层存储数据的内存是从空间配置器申请的,如果需要可以⾃⼰实现内存池,传给第三个参数。⼀般情况下,我们都不需要传后两个模版参数。set底层是⽤红⿊树(下一篇博客重点介绍)实现,增删查效率是OlogN) ,迭代器遍历是⾛的搜索树的中序,所以是有序的。
2024-10-14 22:59:40
972
原创 【Linux】Linux环境的搭建
前言本篇开始我们搭配着C++认识一个新的“大陆”——Linux操作系统,这一篇我们先来了解一下Linux是什么,以及Linux如何搭建环境。
2024-09-21 17:41:21
1505
43
原创 【C++】多态
多态是⼀个继承关系的下的类对象,去调⽤同⼀函数,产⽣了不同的⾏为。⽐如Student继承了Person。Person对象买票全价,Student对象优惠买票。• 必须指针或者引⽤调⽤虚函数• 被调⽤的函数必须是虚函数。说明:要实现多态效果,第⼀必须是基类的指针或引⽤,因为只有基类的指针或引⽤才能既指向派⽣类对象;第⼆派⽣类必须对基类的虚函数重写/覆盖,重写或者覆盖了,派⽣类才能有不同的函数,多态的不同形态效果才能达到。
2024-09-16 18:02:44
1893
54
原创 【C++】继承
下⾯我们看到Person是⽗类,也称作基类。Student是⼦类,也称作派⽣类。(因为翻译的原因,所以既叫⽗类/⼦类,也叫⽗类/⼦类)
2024-09-07 18:38:16
886
3
原创 【C++】模版【进阶】
一个程序(项目)由若干个源文件共同实现,而每个源文件单独编译生成目标文件,最后将所有目标文件链接起来形成单一的可执行文件的过程称为分离编译模式。
2024-08-26 21:54:04
927
3
原创 【C++】STL——deque
deque(双端队列:是一种双开口的连续空间的数据结构,双开口的含义是:可以在头尾两端进行插入和删除操作,且时间复杂度为O(1),与vector比较,头插效率高,不需要搬移元素;与list比较,空间利用率比较高。deque并不是真正连续的空间,而是由一段段连续的小空间拼接而成的,实际deque类似于一个动态的二维数组,其底层结构如下图所示:双端队列底层是一段假象的连续空间,实际是分段连续的,为了维护其整体连续以及随机访问的假象,落在了deque的迭代器身上,因此。
2024-08-26 17:09:36
892
39
原创 【C++】STL——stack,queue
stack2.1 queue的介绍queue1.队列是一种容器适配器,专门用于在FIFO上下文先进先出中操作,其中从容器一端插入元素,另一端提取元素。2.队列作为容器适配器实现,容器适配器即将特定容器类封装作为其底层容器类,queue提供一组特定的成员函数来访问其元素。元素从队尾入队列,从队头出队列。3.底层容器可以是标准容器类模板之一,也可以是其他专门设计的容器类。该底层容器应至少支持以下操作empty:检测队列是否为空size:返回队列中有效元素的个数。
2024-08-19 16:56:35
1201
11
原创 【C++】内存管理
举个例子classApublicAinta0_aacout<<"A():"<<this<<endl;~A()cout<<"~A():"<<this<<endl;privateint_a;intmain()和最大区别是new/delete对于【自定义类型】除了开空间还会调用构造函数和析构函数Ap1AmallocsizeofA));Ap2newA1freep1deletep2;//
2024-07-30 20:48:44
1027
44
原创 【C++】类与对象(上)
•class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后⾯分号不能省略。类体中内容称为类的成员:类中的变量称为类的属性或成员变量;类中的函数称为类的⽅法或者成员函数。•为了区分成员变量,⼀般习惯上成员变量会加⼀个特殊标识,如成员变量前⾯或者后⾯加_ 或者 m开头,注意C++中这个并不是强制的,只是⼀些惯例,具体看公司的要求。•C++中struct也可以定义类,C++兼容C中struct的⽤法,同时struct升级成了类,明显的变化是。
2024-07-16 20:53:34
675
13
原创 【C++】初识C++(上)
前言数据结构暂且总结完,后面高阶数据结构的知识还是需要一种新语言才可以实现,没错,从本篇博客开始,我们正式迈进C++学习中,这篇博客我们先来了解一些C++的入门小东西若有问题 评论区见📝。
2024-07-14 20:21:14
841
41
原创 【数据结构】排序——归并排序,计数排序
1.归并的缺点在于需要O(N)的空间复杂度,归并排序的思考更多的是解决在磁盘中的外排序问题。2.时间复杂度:O(N*logN)(原理在于递归方式与二叉树相似)3.空间复杂度:O(N)(开辟了一个新的动态数组空间)4.稳定性:稳定。
2024-07-11 20:26:30
1029
5
原创 【数据结构】排序——希尔排序
前言本篇博客,我们继续介绍一种排序——希尔排序,上篇博客我们说了插入排序,了解了插入排序,那希尔排序又是什么那,我们一起来看看若有问题 评论区见📝。
2024-07-08 17:17:51
692
24
原创 【数据结构】排序——插入排序,选择排序
前言本篇博客我们正式开启数据结构中的排序,说到排序,我们能联想到我之前在C语言博客中的冒泡排序,它是排序中的一种,但实现效率太慢,这篇博客我们介绍两种新排序,并好好深入理解排序若有问题 评论区见📝。
2024-06-09 21:33:55
1652
36
原创 【数据结构】二叉树链式结构的实现
前言上篇博客我们说了有关二叉树顺序结构——堆,堆是完全二叉树,但我们对于普通的二叉树(不一定为完全二叉树),我们该用什么结构实现那,本篇就来详细说一下,二叉树另一个实现的结构,链式结构若有问题 评论区见📝。
2024-06-02 20:33:51
1847
54
原创 【数据结构】堆与堆排序
前言本篇博客我们来仔细说一下二叉树顺序存储的堆的结构,我们来看看堆到底如何实现,以及所谓的堆排序到底是什么若有问题 评论区见📝。
2024-05-22 16:12:19
999
64
原创 【数据结构】栈和队列专题
前言上篇博客我们讨论了栈和队列的有关结构,本篇博客我们继续来讨论有关栈和队列习题这些题算是经典了若有问题 评论区见📝1.括号匹配问题。
2024-05-14 21:28:54
1957
67
原创 【数据结构】链表专题3
前言本篇博客我们继续来讨论链表专题,今天的链表算法题是经典中的经典💓 个人主页:小张同学zkf⏩ 文章专栏:数据结构若有问题 评论区见📝。
2024-05-02 20:53:30
1777
66
原创 【数据结构】链表专题2
前言本篇博客继续探讨有关链表的专题,这片博客的题,提前打个预防针,有点意思哦,哈哈哈,话不多说,进入正文若有问题 评论区见📝。
2024-05-01 21:35:32
1468
24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人