学习总结
文章平均质量分 72
总结各种知识
未来可期LJ
生活明朗,万物可爱,人间值得,未来可期!
展开
-
[Test 11] C语言通讯录的实现
/ 放到 contact.h 的文件中//类型的声明int age;}PeoInfo;// 把结构体数组再次用结构体封装,比起直接在main()函数中创建结构体数组,增加代码的可读性//存放数据int sz;//记录的时当前通讯录中存放的人的信息个数}Contact;原创 2024-05-22 10:35:57 · 261 阅读 · 0 评论 -
[Test 10] this 指针的详解!
解决该问题,即:C++编译器给每个“非静态的成员函数“增加了一个隐藏的指针参数,让该指针指向当前对象(函数运行时调用该函数的对象),在函数体中所有“成员变量”的操作,都是通过该指针去访问。编译器是否解引用,要观察解引用以后有没有意义,需不需要拿到这个对象,需不需要到这个对象的空间上面去找东西;指针是一个空指针,访问this指针_a的位置,就要对空指针进行解引用,此时就会崩溃。写出来,因为他是隐含的,我们不能抢了编译器的活。只不过所有的操作对用户是透明的,即用户不需要来传递,的地址是在编译的时候确定的;原创 2024-05-22 10:31:25 · 113 阅读 · 0 评论 -
[Test 09] 力扣 Leetcode 3120 统计特殊字母的数量、使矩阵满足条件的最少操作次数
大写字母和对应的小写字母低5位都是相等的;🐧③位运算小技巧:🐥。要保证相邻列数字不同。原创 2024-05-22 09:16:02 · 179 阅读 · 0 评论 -
【Test 08】优先队列、滑动窗口、DFS
①没有用 flag 来记录的话,所有在 DFS 暴搜的时候需要对返回的结果进行及时的判断。用一个 pos 记录要匹配单词 word 的位置,每次与 pos 进行匹配判断。① ✌ 滑动窗口要想清楚四个问题: 什么时候进窗口。,将偶数存入优先队列里面,每次取最大的元素减半。插入一个元素的时间复杂度是。DFS (深度优先遍历),原创 2024-05-20 16:38:02 · 612 阅读 · 1 评论 -
[Test 07]实现进度条小程序
①make是一个指令,Makefile是一个文件;② .PHONY 可以理解成为一个关键字。原创 2024-05-20 15:22:22 · 357 阅读 · 1 评论 -
[Test 06] 函数栈帧的创建和销毁
push 指令:压栈,从栈顶增加一个元素,它首先减少的值,再将源操作数复制到栈地址,在32位平台上,每次减少4字节;pop 指令:它首先把指向的栈元素内容复制到一个操作数中,再增加的值。在32位平台上,每次增加4字节;mov指令:用于将一个数据从源地址传送到目标地址,源操作地址的内容不变;sub 指令:减操作指令,从寄存器减去数值,然后将结果保存到寄存器中;lea 指令:是“load effective address”的缩写,简单的说,lea指令可以用来将一个内存地址直接赋给目的操作数; rep 指令:原创 2024-05-19 18:27:32 · 436 阅读 · 1 评论 -
[Test 05] 哈希表更详细的知识点!
所以key值是有序的,但key不可以修改,改动key值会导致整棵树的错乱,所以只能删除和增加。同理,std::map 和std::multimap 的key也是有序的。,std::set 和std::multiset 的底层实现是。,std::map 和std::multimap 的底层实现是。因为它的查询和增删效率是最优的,如果需要集合是有序的,那么就用。① std::unordered_map 底层实现为。没有限制的,因为key的存储方式使用红黑树实现的。的数据结构,map中,对key是有限制,对。原创 2024-05-19 16:56:24 · 132 阅读 · 0 评论 -
[Test 04] Linux 中,inode、文件系统的理解!
记录的信息主要有:bolck 和 inode的总量,未使用的block和inode的数量,一个block和inode的大小,最近一次挂载的时间,最近一次写入数据的时间,最近一次检验磁盘的时间等其他文件系统的相关信息。① 超级块(Super Block)可以比喻为一个地图,它记录了整个文件系统的布局和重要的属性。:Block Bitmap中记录着Data Block中哪个数据块已经被占用,哪个数据块没有被占用;们在旅行时需要地图来了解道路和地点一样,文件系统也需要超级块来了解存储数据的结构和属性。原创 2024-05-18 22:21:34 · 314 阅读 · 0 评论 -
[Test03] 虚函数的重写!
①🍎重写只需要重写派生类的实现方式就好了(意思就是子类的函数名、函数参数、返回值类型用的是父类的),只重写函数体内部的实现!①🍎注意:如果派生类 new 出来了一个对象,申请了一段内存,必须重写子类的析构函数,并将基类的析构函数定义成为虚函数,不然子类申请的空间无法释放掉(内存泄露)。③🍎 虚函数重写,重写的是函数体的实现,函数体的结构部分(如函数名,函数参数,函数返回值)用的是父类的。即基类虚函数返回基类对象的指针或者引用,派生类虚函数返回派生类对象的指针或者引用时,称为协变。派生类重写基类虚函数时,原创 2024-05-18 18:28:04 · 302 阅读 · 0 评论 -
【Test02】QMap、QHash、QVector 的知识你了解多少 ?
🐧①提供一个从类型为Key的键到类型为T的值的映射。通常,QMap存储的数据形式是一个键对应一个值,并且按照键Key的次序存储数据。🐧② 为了能够支持一键多值的情况,QMap提供和函数。QMultiMap 类来实例化一个QMap对象。原创 2024-05-18 17:58:03 · 876 阅读 · 0 评论 -
[Test 01] 浅拷贝和深拷贝你了解多少?
⽽不涉及对象内部动态分配的资源。在浅拷⻉中,新对象和原对象共享相同的资源,⽽不是复制⼀份新的资源。是对对象的完全独⽴复制,包括对象内部动态分配的资源。在深拷⻉中,不仅复制对象的值,还会。🐧②对象内部动态分配的资源不会被复制,新对象和原对象共享同⼀份资源。🐧②动态分配的资源也会被复制,新对象拥有⾃⼰的⼀份资源副本。🐧① 复制对象及其所有成员变量的值。🐧① 复制对象及其所有成员变量的值。原创 2024-05-17 14:05:59 · 291 阅读 · 0 评论 -
【Test】Linux 中进程间的通信详解
②只能由血缘关系的两个进程进行通信(父和子进行通信,或者爷孙之间进行通信);:进程的并发控制肯定是需要多个进程之间通信来完成的;,所以我们也要把管道按文件来理解,管道实际上是。:某个进程可能需要控制另外一个进程一起运行;②没有亲缘关系的两个进程也可以进行通信;:有的时候两个进程需要访问同一块资源;两个进程访问内核中的同一块缓冲区。用于进程间的数据传输。①缓冲区没有标识符;原创 2024-05-17 13:37:24 · 133 阅读 · 0 评论 -
【Test】Qt 信号与槽机制
🐧参数 1发出信号的对象;🐧参数 2sender 对象的信号;🐧参数 3信号接收者;🐧参数 4receiver 对象的槽函数,当检测到 sender 信号,receiver对象调用 method 方法。原创 2024-05-17 10:12:48 · 339 阅读 · 0 评论 -
【Test】平衡二叉搜索树
/ AVL树要定义节点的父亲,因为更新需要更新祖先的平衡因子int _bf;// 该节点的平衡因子//构造函数,以便初始化, _kv(kv), _bf(0);{}原创 2024-05-16 19:44:13 · 463 阅读 · 0 评论 -
【Test】QMap、QHash、QVector你了解多少?
🐧①提供一个从类型为Key的键到类型为T的值的映射。通常,QMap存储的数据形式是一个键对应一个值,并且按照键Key的次序存储数据。🐧② 为了能够支持一键多值的情况,QMap提供和函数。QMultiMap 类来实例化一个QMap对象。原创 2024-05-16 19:37:20 · 433 阅读 · 0 评论 -
【Test】AVL ~ 二叉搜索树
/ AVL树要定义节点的父亲,因为更新需要更新祖先的平衡因子int _bf;// 该节点的平衡因子//构造函数,以便初始化, _kv(kv), _bf(0);{}原创 2024-05-15 19:46:58 · 234 阅读 · 0 评论 -
【Test】C++ 数据结构 红黑树你了解多少呢?
🐧① 红黑树的概念;🐧② 红黑树节点的插入以及验证红黑树;🐧③ 红黑树有关面试题;原创 2024-05-15 16:42:17 · 425 阅读 · 0 评论 -
【Test】红黑树你了解吗?
与根节点进行区分,将头结点给成黑色,并且让头结点的 pParent 域指向红黑树的根节点,pLeft。通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路。红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或。为了后续实现关联式容器简单,红黑树的实现中增加一个头结点,因为跟节点必须为黑.原创 2024-05-13 21:01:21 · 242 阅读 · 0 评论 -
【Test】高阶数据结构 AVL树
①🐧 AVL树的概念; ②🐧 AVL树的插入细节;原创 2024-05-12 21:20:51 · 222 阅读 · 0 评论 -
【TEST】
前面对map/multimap/set/multiset进行了简单的介绍,在其文档介绍中发现,这几个容器有个共同点是:其底层都是按照二叉搜索树来实现的,但是二叉搜索树有其自身的缺陷,假如往树中插入的元素有序或者接近有序,二叉搜索树就会退化成单支树,时间复杂度会退化成O(N),因此map、set等关联式容器的底层结构是对二叉树进行了平衡处理,即采用平衡树来实现。{}// 该节点的左孩子// 该节点的右孩子// 该节点的双亲T _data;int _bf;// 该节点的平衡因子。原创 2024-05-12 21:21:55 · 280 阅读 · 0 评论 -
莫问前程,踏实前行!!!
踏实前行,一直在努力追逐梦想的程序员!!!原创 2023-08-18 20:27:37 · 198 阅读 · 8 评论