自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 收藏
  • 关注

原创 【高阶数据结构】B树 {B树的概念;B树的实现:节点设计,查找,插入,遍历,删除;B树的性能分析;B+树和B*树;B树的应用}

【高阶数据结构】B树 {B树的概念;B树的实现:节点设计,查找,插入,遍历,删除;B树的性能分析;B+树和B*树;B树的应用}

2024-04-24 10:42:37 743

原创 【高阶数据结构】哈希表 {哈希函数和哈希冲突;哈希冲突的解决方案:开放定址法,链地址法;红黑树结构 VS 哈希结构}

【高阶数据结构】哈希表 {哈希函数和哈希冲突;哈希冲突的解决方案:开放地址法,拉链法;红黑树结构 VS 哈希结构}

2024-04-15 09:00:47 932

原创 【优选算法】滑动窗口 {何时使用滑动窗口?如何使用滑动窗口?如何确定更新结果的时机?滑动窗口是如何提高效率的?相关编程题解析}

【优选算法】滑动窗口 {何时使用滑动窗口?如何使用滑动窗口?如何确定更新结果的时机?滑动窗口是如何提高效率的?相关编程题解析}

2024-01-15 09:38:06 882 1

原创 【优选算法】双指针 {前后指针,对撞指针,快慢指针}

常见的双指针有三种形式:前后指针,对撞指针和快慢指针。

2023-12-27 09:00:00 454

原创 【C++】C++IO流 {标准IO流(iostream),4个全局流对象;文件IO流(fstream),二进制读写和文本读写;字符串IO流(stringstream),序列化和反序化}

【C++】C++IO流 {标准IO流(iostream),4个全局流对象;文件IO流(fstream),二进制读写和文本读写;字符串IO流(stringstream),序列化和反序化}

2023-11-28 10:00:00 1017

原创 【C++】C++的类型转换 {C++的四种类型转换:static_cast,reinterpret_cast,const_cast,dynamic_cast;RTTI 运行时类型识别}

【C++】C++的类型转换 {C++的四种类型转换:static_cast,reinterpret_cast,const_cast,dynamic_cast;RTTI 运行时类型识别}

2023-11-24 10:00:00 1038

原创 【C++】特殊类设计 {不能被拷贝的类;只能在堆上创建的类;只能在栈上创建的类;不能被继承的类;单例模式:懒汉模式,饿汉模式}

【C++】特殊类设计 {不能被拷贝的类;只能在堆上创建的类;只能在栈上创建的类;不能被继承的类;单例模式:懒汉模式,饿汉模式}

2023-11-23 10:00:00 129

原创 【C++11】智能指针 {内存泄漏;RAII设计思想,智能指针的拷贝问题;auto_ptr;unique_ptr;shared_ptr & weak_ptr:线程安全问题,循环引用问题,定制删除器}

【C++11】智能指针 {内存泄漏;RAII设计思想,智能指针的拷贝问题;auto_ptr;unique_ptr;shared_ptr & weak_ptr:线程安全问题,循环引用问题,定制删除器}

2023-11-22 15:00:00 1024

原创 【C++11】异常 {try/catch语句语法;异常抛出和捕获的匹配原则,异常的栈展开,异常的重新抛出;异常继承体系,异常声明;异常的优缺点,异常安全问题}

【C++11】异常 {try/catch语句语法;异常抛出和捕获的匹配原则,异常的栈展开,异常的重新抛出;异常继承体系,异常声明;异常的优缺点,异常安全问题}

2023-11-20 10:00:00 267

原创 【C++11】多线程库 {thread线程库,mutex互斥锁库,condition_variable条件变量库,atomic原子操作库}

【C++11】多线程库 {thread线程库,mutex互斥锁库,condition_variable条件变量库,atomic原子操作库}

2023-11-18 10:00:00 278

原创 【C++11】lambda表达式 & function包装器 {lambda表达式:基本语法,捕获列表,函数对象与lambda表达式;function包装器:使用方法,应用场景,bind绑定}

【C++11】lambda表达式 & function包装器 {lambda表达式:基本语法,捕获列表,函数对象与lambda表达式;function包装器:使用方法,应用场景,bind绑定}

2023-11-16 10:00:00 78

转载 无锁队列的实现 {CAS操作的原理,无锁队列的链表实现,CAS的ABA问题,无锁队列的数组实现}

CAS操作的原理,无锁队列的链表实现,CAS的ABA问题,无锁队列的数组实现

2023-11-14 09:41:33 93

原创 【多线程】线程同步 {竞态条件与同步机制;条件变量,pthread_cond系列函数;基于BlockQueue的生产者消费者模型,条件变量的使用规范,生产者消费者模型如何提高效率?RAII加锁方式}

【多线程】线程同步 {竞态条件与同步机制;条件变量,pthread_cond系列函数;基于BlockQueue的生产者消费者模型,条件变量的使用规范,生产者消费者模型如何提高效率?RAII加锁方式}

2023-11-04 09:47:29 134

原创 【多线程】线程互斥 {多执行流并发执行的数据竞争问题,互斥锁的基本用法,pthread_mutex系列函数,互斥锁的原理;死锁;可重入函数和线程安全}

【多线程】线程互斥 {多执行流并发执行的数据竞争问题,互斥锁的基本用法,pthread_mutex系列函数,互斥锁的原理;死锁;可重入函数和线程安全}

2023-10-30 16:04:55 273

原创 【多线程】线程控制 {线程创建,线程异常,在多线程中进行程序替换;线程等待,线程入口函数的参数和返回值;线程终止,线程ID,线程属性结构,线程独立栈结构,线程局部变量;线程分离;pthread库函数}

【多线程】线程控制 {线程创建,线程异常,在多线程中进行程序替换;线程等待,线程入口函数的参数和返回值;线程终止,线程ID,线程属性结构,线程独立栈结构,线程局部变量;线程分离;pthread库函数}

2023-10-29 09:00:00 89

原创 【多线程】线程的概念 {Linux内核中的堆区管理;虚拟地址到物理地址的转换,页,页框,页表,MMU内存管理单元;Linux线程概念,轻量级进程;线程共享进程的资源;线程的优缺点;线程的用途}

【多线程】线程的概念 {Linux内核中的堆区管理;虚拟地址到物理地址的转换,页,页框,页表,MMU内存管理单元;Linux线程概念,轻量级进程;线程共享进程的资源;线程的优缺点;线程的用途}

2023-10-27 12:04:01 91

原创 【信号】信号处理 {信号处理的时机;内核态和用户态;信号捕捉的原理;信号处理函数:signal, sigaction;可重入函数;volatile关键字;SIGCHLD信号}

【信号】信号处理 {信号处理的时机;内核态和用户态;信号捕捉的原理;信号处理函数:signal, sigaction;可重入函数;volatile关键字;SIGCHLD信号}

2023-10-25 09:00:00 225

原创 【Object-Oriented C++】多态 {多态的构成条件,virtual函数;抽象类;多态的实现原理,虚函数表,动态绑定与静态绑定;单继承和多继承的虚函数表;}

【Object-Oriented C++】多态 {多态的构成条件,virtual函数;抽象类;多态的实现原理,虚函数表,动态绑定与静态绑定;单继承和多继承的虚函数表;}

2023-10-23 20:54:23 176

原创 【信号】信号保存 {管理信号的数据结构:pending,block,handler;信号集;sigset_t类型;信号集操作函数;相关系统调用:sigpending, sigprocmask}

【信号】信号保存 {管理信号的数据结构:pending,block,handler;信号集;sigset_t类型;信号集操作函数;相关系统调用:sigpending, sigprocmask;}

2023-10-23 09:00:00 67

原创 【信号】信号产生 {信号的基本概念;常见的信号;信号产生的4种方法;core dump核心转储;相关系统调用:signal,kill,raise,abort,alarm}

【信号】信号产生 {信号的基本概念;常见的信号;信号产生的4种方法;core dump核心转储;相关系统调用:signal,kill,raise,abort,alarm}

2023-10-21 09:00:00 227

原创 【进程间通信】System V共享内存通信 {共享内存通信原理;相关函数:shmget, ftok, shmat, shmdt, shmctl;消息队列和信号量;IPC相关命令}

【进程间通信】System V共享内存通信 {共享内存通信原理;相关函数:shmget, ftok, shmat, shmdt, shmctl;消息队列和信号量;IPC相关命令}

2023-10-11 16:56:58 126

原创 【进程间通信】管道通信 {进程间通信的目的;进程间通信的常用方法;匿名管道:实现原理,管道符|,系统调用pipe,进程池;命名管道:mkfifo指令,系统调用mkfifo}

【进程间通信】管道通信 {进程间通信的目的;进程间通信的常用方法;匿名管道:实现原理,管道符|,系统调用pipe,进程池;命名管道:mkfifo指令,系统调用mkfifo}

2023-10-10 09:29:17 148

原创 【C++11】右值引用和移动语义 {左值引用和右值引用;移动语义;解决函数传值返回的深拷贝问题;完美转发;默认成员函数总结,default和delete关键字,final和override关键字}

【C++11】右值引用和移动语义 {左值引用和右值引用;移动语义;解决函数传值返回的深拷贝问题;完美转发;默认成员函数,default和delete关键字,final和override关键字}

2023-10-01 11:01:43 168

原创 【C++11】新语法 { {}初始化;初始化列表 initializer_list;类型声明:auto, decltype, nullptr;可变参数模版:参数包的展开方法,emplace插入接口}

【C++11】新语法 { {}初始化;初始化列表 initializer_list;类型声明:auto, decltype, nullptr;可变参数模版:参数包的展开方法,emplace插入接口}

2023-09-30 17:36:29 136

转载 【C语言初阶】运算符的优先级和结合性

【C语言初阶】运算符的优先级和结合性

2023-09-28 16:29:36 392

原创 【高阶数据结构】哈希的其他应用 {位图的介绍及实现,位图的组合应用;布隆过滤器的介绍及实现,布隆过滤器的应用;哈希切分}

【高阶数据结构】哈希的其他应用 {位图的介绍及实现,位图的应用;布隆过滤器的介绍及实现,布隆过滤器的应用;哈希切分}

2023-09-26 11:20:12 190

原创 【STL】哈希表 {unordered系列容器的介绍和使用;模拟实现unordered_set和unordered_map}

【STL】哈希表 {unordered系列容器的介绍和使用;模拟实现unordered_set和unordered_map}

2023-09-23 12:47:57 258

原创 【STL】模拟实现map和set {带头结点的红黑树;红黑树的核心结构;红黑树的迭代器;红黑树的插入和查找;map和set的封装}

【STL】模拟实现map和set {带头结点的红黑树;红黑树的核心结构;红黑树的迭代器;红黑树的插入和查找;map和set的封装}

2023-09-09 17:40:25 208

原创 【高阶数据结构】红黑树 {概念及性质;红黑树的结构;带头结点的红黑树;红黑树的实现;红黑树插入操作详细解释;红黑树的验证}

【高阶数据结构】红黑树 {概念及性质;红黑树的结构;带头结点的红黑树;红黑树的实现;红黑树插入操作详细解释;红黑树的验证}

2023-09-03 19:35:14 972

原创 【高阶数据结构】AVL树 {概念及实现;节点的定义;插入并调整平衡因子;旋转操作:左单旋,右单旋,左右双旋,右左双旋;AVL树的验证及性能分析}

【高阶数据结构】AVL树 {概念及实现;节点的定义;插入并调整平衡因子;旋转操作:左单旋,右单旋,左右双旋,右左双旋;AVL树的验证及性能分析}

2023-08-31 16:51:23 878

原创 【STL】map和set的介绍和使用 {关联式容器;键值对;map和set;multimap和multiset;OJ练习}

【STL】map和set的介绍和使用 {关联式容器;键值对;map和set;multimap和multiset;OJ练习}

2023-08-28 23:42:33 565

原创 【高阶数据结构】二叉搜索树 {概念;实现:核心结构,增删查,默认成员函数;应用:K模型和KV模型;性能分析;相关练习}

【高阶数据结构】二叉搜索树 {概念;实现:核心结构,增删查,默认成员函数;应用:K模型和KV模型;性能分析;相关练习}

2023-08-25 09:35:35 334

原创 【Object-Oriented C++】继承 {继承的概念;继承的定义;继承中的作用域;基类和派生类对象赋值转换;派生类的默认成员函数;继承与友元;继承与静态成员;菱形继承和虚拟继承;继承和组合}

【Object-Oriented C++】继承 {继承的概念;继承的定义;继承中的作用域;基类和派生类对象赋值转换;派生类的默认成员函数;继承与友元;继承与静态成员;菱形继承和虚拟继承;继承和组合}

2023-08-14 19:30:51 92

原创 【Linux拓展】ncurses库的安装和使用 {ncurses库的安装方法,ncurses库的使用手册,基于终端的贪吃蛇游戏}

【Linux拓展】ncurses库的安装和使用 {ncurses库的安装方法,ncurses库的使用手册,基于终端的贪吃蛇游戏}

2023-08-10 09:00:00 6243

原创 【基础IO】动静态库 {动静态库的创建和使用;动静态库的加载;默认优先使用动态链接;为什么要有库;动态链接的优缺点;静态链接的优缺点;一些有趣的库}

【基础IO】动静态库 {动静态库的创建和使用;动静态库的加载;默认优先使用动态链接;为什么要有库;动态链接的优缺点;静态链接的优缺点;一些有趣的库}

2023-08-10 09:00:00 180

原创 【基础IO】文件系统 {磁盘的物理结构,存储系统,CHS寻址;磁盘的逻辑结构:LBA寻址,EXT文件系统:磁盘分区结构,块组结构;inode编号;软硬链接}

【基础IO】文件系统 {磁盘的物理结构,存储系统,CHS寻址;磁盘的逻辑结构:LBA寻址,EXT文件系统:磁盘分区结构,块组结构;inode编号;软硬链接}

2023-08-07 09:00:31 1032

原创 【基础IO】文件描述符(下) {重定向:输入,输出,追加重定向,系统调用dup2;Linux虚拟文件系统;文件缓冲区:用户缓冲区,内核缓冲区;stdout VS stderr;perror}

【基础IO】文件描述符(下) {重定向:输入,输出,追加重定向,系统调用dup2;Linux虚拟文件系统;文件缓冲区:用户缓冲区,内核缓冲区;stdout VS stderr;perror}

2023-08-04 09:00:00 229

原创 【基础IO】文件描述符(上) {预备知识,C语言文件类函数:fopen & fputs & fgets,文件类系统调用:open & close & read & write,文件描述符}

【基础IO】文件描述符(上) {预备知识,C语言文件类函数:fopen & fputs & fgets,文件类系统调用:open & close & read & write,文件描述符}

2023-08-01 09:00:00 277

原创 【Linux进程】进程控制(下) {进程程序替换:程序替换的工作原理,程序替换函数exec*,简单的命令行解释器}

【Linux进程】进程控制(下) {进程程序替换:程序替换的工作原理,程序替换函数exec*,简单的命令行解释器}

2023-07-29 09:00:00 647

原创 【Linux进程】进程控制(中) {进程等待:等待的必要性,进程等待的方法wait,waitpid,退出状态status,waitpid非阻塞等待}

【Linux进程】进程控制(中) {进程等待:等待的必要性,进程等待的方法wait,waitpid,退出状态status,waitpid非阻塞等待}

2023-07-26 09:00:00 203

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除