自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 高级IO-多路转接

五种IO模型,多路转接之select,poll,epoll,Reactor

2023-01-02 18:31:43 538 1

原创 网络层&IP

IP报头,分片,网段划分,路由。

2022-12-31 16:01:59 1187 1

原创 数据链路层

ARP,ICMP(了解),NAT技术,代理服务器

2022-12-31 15:58:41 776

原创 读者写者模型&&自旋锁(了解)

读者写者模型以及自旋锁的了解性知识,代码未实现。

2022-12-29 17:22:37 423

原创 Linux-线程(LWP)

线程概念引入,与进程区别;线程控制中的创建线程,线程等待,线程中止,线程分离。线程的同步以及互斥,条件变量,锁的使用,信号量。线程池的设计,以及线程安全问题的解决。基于生产者消费者模型的各种实验,环形队列。

2022-12-29 17:02:00 3565

原创 MySQL-事务

事务MVCC隔离级别,ACID属性,undolog,readview,实验实现RR RC级别,分析隔离级别是怎么实现的。

2022-12-26 14:37:59 1274

原创 Linux-信号

信号的产生前中后过程介绍以及代码实验验证,用户态和内核态的切换。可重入函数,volatile,SIGCHLD信号的处理。

2022-12-24 20:50:37 315

原创 进程间通信

匿名管道,命名管道,System V的共享内存以及信号量概念部分的理解

2022-12-23 18:20:05 2118

原创 MySQL-索引

索引结构,页目录,为什么用B+树,聚簇索引和非聚簇索引,索引操作

2022-12-22 15:50:21 315

原创 传输层协议

TCP/IP五层网络协议之传输层协议TCP和UDP

2022-12-21 12:51:42 886

原创 滑动窗口思想练习题

滑动窗口解决串联所有单词的子串和找到字符串中所有的字母异位词

2022-12-18 18:06:36 296

原创 LinuxOS-IO-动静态库

Linux操作系统基础IO之动静态库的制作和使用以及注意事项

2022-12-17 18:01:12 383

原创 寻找两个正序数组的中位数&&K个一组翻转链表

寻找正序数组中位数和k个一组翻转链表

2022-12-17 13:15:18 540

原创 MySQL-复合查询

单表查询,多表查询,子查询,合并查询。

2022-12-15 23:15:59 318

原创 MySQL-内置函数

MySQL数据库日期函数,字符串函数,数学函数其他

2022-12-15 23:08:26 256

原创 表的增删查改&&基本查询(where-group by-having)

表属性的增删查改,select,以及基本查询操作(含题目练习)

2022-12-15 22:56:24 556

原创 Linux-iNode-软硬链接

文件系统之文件inode以及软硬链接

2022-12-13 16:47:40 1015

原创 文件描述符和缓冲区

文件描述符,一切皆文件,缓冲区

2022-12-13 16:36:13 671

原创 哈希(开散列、闭散列)-位图-布隆过滤器-哈希切分

哈希实现unordered_map unoredered_set的底层原理,哈希中的开散列、闭散列,位图,布隆过滤器,哈希切分

2022-12-06 17:17:29 1181

原创 应用层协议

网络协议的理解-序列化反序列化-HTTP协议-HTTPS协议

2022-12-04 20:38:31 562

原创 C++11之智能指针

C++11的智能指针的几种形式和演变过程以及简单实现和注意事项以及使用场景。

2022-11-28 20:43:01 492

原创 网络套接字

网络套接字-端口号-TCP-UDP的CS简单模式

2022-11-27 17:39:45 929

原创 MySQL数据库-引入-数据类型-约束

MYSQL概念-数据类型-约束

2022-11-25 14:00:54 497

原创 二叉树练习题分享

**二叉树是常见的数据结构,本期分享二叉树的升级版算法。难懂的地方本人已经做出注释以及相应的图示分析帮助大家理解。**文章目录1. 将二叉树的节点转换成括号表达式(1)做法一:(2)做法二:减少拷贝次数,string 的构造次数。2.“新”层序遍历,实现一次出多个,返回一个二维数组。3.二叉树两个节点的最近公共祖先4.二叉树转换为双向链表5.前中序实现二叉树重建6.非递归实现前中后序遍历1.非递归实现前序遍历2.非递归实现中序遍历3.非递归实现后序遍历7. 每日分享!1. 将二叉树的节点转换成括号

2022-05-01 18:31:46 1014 4

原创 进程控制的理解和板书演示

这篇博客是对于进程控制的完整篇,有进程创建、进程中止、进程等待、进程程序替换的相关概念理解和图片的形式进行的测试演示便于理解。文章目录一、进程创建二、进程中止1. 进程退出场景2. 进程中止3. 进程退出方式4. 进程退出的作用三、进程等待1. 是什么?2. 为什么让父进程等待呢?3. 如何进程等待?僵尸进程回收的演示4. waitpid()介绍和简单使用(1).第一个参数是进程pid(2)第二个参数status(得到退出信息)如何获取子进程的退出信息?父进程拿到什么status结果,一定和子进程如何退出

2022-04-28 21:56:32 406 4

原创 环境变量&&进程地址空间

文章目录一. 环境变量1.浅谈环境变量2. 什么是环境变量3. 命令行参数4.如何获取环境变量?5. 环境变量具有全局性,是因为环境变量是可以被子进程继承的。二. 进程地址空间1. 内存存储的方式:上面是高地址,下面是低地址。2. C/C++程序地址空间,他是内存吗?3. 虚拟内存初步4. 如何使用struct结构体进行各种区域划分,各种区域划分有什么物理意义?5. 虚拟地址和物理结构之间的联系6. 为什么非得有虚拟地址和页表进行映射物理内存呢?7. 为什么要有地址空间?8. 补充说明:一. 环境变量1

2022-04-26 17:47:02 929 1

原创 进程概念部分的理解

Linux进程概念

2022-04-23 13:16:45 1480 4

原创 《剑指offer》每日分享三道题系列 -day 6

今天的主题大致是栈和队列的时候,希望大家可以加深对于站和队列的应用理解文章目录一.找到所含有的最小元素时间复杂度是O(1)(辅助栈)二. 判断是否是栈的弹出序列三.二叉树的层序遍历四.逆波兰表达式的求解(后缀表达式)五. 每日一遍,学习不厌!一.找到所含有的最小元素时间复杂度是O(1)(辅助栈)我们面对这道题的第一个想法是在元素入栈之前进行最小值的判断,如果是最小值就更新一下,这样在将所有元素入栈之后,我们就可以得到最小值。但是如果我想要的是数组元素中第二小的值呢?第三小的值呢?所以这种疑问就引导

2022-04-23 10:29:02 270 3

原创 《剑指offer》每日分享三道题系列-day 5

文章目录一 动态规划类型题的初步理解1.斐波那锲数列(1)迭代的方式(2)递归的方式(map进行剪枝效果)2.兔子繁衍问题3.青蛙跳台阶问题4.小矩形覆盖大矩形的问题二. 二叉树镜像变换三. 在一个排序的单链表,存在重复的节点,删除重复的。四.博主,再来一碗“鸡汤”!一 动态规划类型题的初步理解动态规划是相对比较难理解的类型题,这期博客先给大家分享一些典型的动态规划的类型小题,希望在我的帮助下,大家会对于动态规划有些初步的认识,在后续的系列中,会继续为大家进一步剖析动态规划的相关习题。动态规划我们需要

2022-04-20 15:38:58 255 5

原创 《剑指offer系列》每日分享 day-4

文章目录一. 翻转单链表1.三指针的方法2. 头插的方法(推荐)二. 俩个单调递增的单链表合并为一个不递减的单链表1. 正常做法2.递归的方式实现三.二叉树 判断b是否是a的子树(空树不是任意一棵树的子树)四. 小激励来了一. 翻转单链表1.三指针的方法在我们采用三指针进行单链表的翻转时,我们要考虑到三种情况:(1) 当传过来的这个链表是一个空或者只有一个的时候,就不需要再进行翻转,直接返回就行(2) 就是图示的正常情况,当三个指针指向的都有值。(3)当最后一个指针指向空时,跳出循环要进行特殊处

2022-04-18 14:28:04 1220

原创 《剑指offer系列》-day3

文章目录一. 根据前中序完成二叉树(不包含重复数据)的重建1. 思路:2. 下面代码中的递归语句理解:3. 代码如下(另有相关代码注释帮助理解):二.二进制计算一个数字里面有几个1三. 输入一个单链表,输出倒数第K个节点四. 每日小感慨一. 根据前中序完成二叉树(不包含重复数据)的重建1. 思路:先序遍历第一个就是根节点,所以拿着前序的根节点在中序序列中找到根节点的位置。先找到根节点,进而划分左子树和右子树的前中序序列。划分如下:(1)如何划分前序(根节点,左子树前序,右子树前序)(2)如何划分

2022-04-17 23:00:20 587

原创 《剑指offer》每日分享三道题- 2 day

《剑指offer》系列第二弹,让我们用饱满的热情,迎接接下来的几道小题。 >本系列分享的都是常规做法和全新思路的总结,各位可千万不要看着眼熟,而错过新颖的思路噻!!!文章目录1.将数组中出现次数超过一半的数字返回(1)采用unordered_map方式(2)先排序再找中间位置元素记录次数进行验证(3)候选法,两个不同的数据相消减2. 将字符串中的空格替换成 %203.递归的思路实现单链表的逆序打印4. 大郎,喝鸡汤了!!!1.将数组中出现次数超过一半的数字返回(1)采用unordered_m.

2022-04-02 22:56:44 445

原创 《剑指offer》每日分享三道题 -1 day

《剑指offer》中都是必刷的题目,接下来我将会出一个系列的博文来带大家和我一样完成这一系列的题目。杨氏矩阵查找元素首先给大家一个杨氏矩阵的示意图,如图所示:一个二维数组从左到右,从上到下都是递增的那么我们如何查找到一个数组元素是否存在呢?大多数情况下,在数组元素并不是很多的情况下我们都会进行数组遍历从而确定。接下来将会给大家呈现一种新的方法1.首先我们需要清楚的一件事情就是:*查找的过程就是排除的过程,一次过程排除的越多效率就越高思路:跟右上角(左下角)的元素进行比较, 如果.

2022-04-01 12:05:12 625 1

原创 自定义类型:枚举,结构体,联合体

文章目录枚举1.枚举的定义2.枚举的优点3.枚举的使用结构体联合体枚举1.枚举的定义枚举就是将各种可能的结果一一列举。比如人的性别有男和女,三原色有红绿蓝。枚举的声明:enum Day//星期{ Mon, Tues, Wed, Thur, Fri, Sat, Sun};enum Sex//性别{ MALE, FEMALE, SECRET};enum Color//颜色{ RED, blue, green以上定义的 enum Day , enum S

2021-09-20 21:03:40 406 1

原创 库函数->处理字符和字符串的库函数的介绍和实现

要介绍的有关于字符串的库函数一.求字符串长度:strlen二.长度不受限制的字符串函数:strcpystrcatstrcmp长度受限制的字符串函数介绍:strncpystrncatstrncmp字符串查找:strstrstrtok错误信息报告:strerror字符操作内存操作函数一.求字符串长度:strlensize_t strlen ( const char * str);//括号当中传入首元素地址1.从字符串首元素开始,遇到“\0”就停止,每经过一位就+1,即返回的是\0以前字符的个数。2.

2021-09-18 23:57:06 251 1

原创 指针(中)——传参,函数指针,函数指针数组,指向函数指针数组的指针

目录1.数组传参,指针传参(一)一维数组传参(二)二维数组传参(三)一维指针传参(四)二级指针传参2.函数指针 函数地址的存储: 函数的调用:强化练习,理解两段代码3.函数指针数组函数指针数组的定义函数指针数组的实现4.指向函数指针数组的指针定义1.数组传参,指针传参在写代码的时候难免要把【数组】或者【指针】传给函数,其中要注意传数组,就必须用数组接收,传指针就必须用指针接收。(一)一维数组传参 ...

2021-08-21 19:35:06 780 1

原创 指针的理解与应用(上)——几种常见指针

目录1.字符指针2.指针数组3.数组指针1.字符指针 在指针的类型当中,我们知道有一种字符指针:char*.1.在日常中有两种使用方式(1)将一个字符的地址储存//最普通的指向一个字符 char p = 'w'; char* pa = &p;在解引用中:只打印一个元素,即 w(2)指向一个字符串,实际上也是指向第一个字符。将字符串首个字母H的地址放到p中,因为char类型解引用之后也只能存放一个字节的内容。const char...

2021-08-18 22:30:37 606 5

原创 数据在内存当中的存储(浮点数,整形存储,大小端)

目录浮点数篇大小端的介绍即判断整形在内存中的存储浮点数篇首先说 浮点数家族包括: float、double、long double 类型。 浮点数表示的范围:float.h中定义。首先我们先来看这样一个例子:前后声明的值都为9,但是在整形类型输出和浮点数类型输出时产生明显的差异,就说明整数类型和浮点数类型在内存当中存储的形式是完全不同的。那么浮点数类型在数组当中是怎样存储和取出的呢?(一)浮点数类型在内存当中的存储根...

2021-08-17 23:04:06 450 2

原创 qsort(快速排序)函数和bsearch(二分法查找) 函数

qsort函数C语言编译器函数库自带的排序函数,quick sort快速排列函数。qsort函数包含在C 标准库 - <stdlib.h>中。qsort 的函数原型是void qsort(void*base,size_t num,size_t width,int(__cdecl*compare)(const void*,const void*));qsort函数通用性比较好,可以排序数组,字符串,结构体等进行升序降序排列。为了让大家便于理解,我们先举一个简单的整形数组的例子:...

2021-08-16 22:30:21 481 4

原创 函数栈帧的创建和销毁(深刻且形象)

对于函数栈帧的创建和销毁知识的理解可以帮助我们更加深入的了解:1.局部变量是如何创建的。2.形参和实参的关系。3.函数的传参是怎么实现的。4,.函数调用结束是如何返回的.事不宜迟,我们现在就开始吧!首先,根据一串代码做出形象的解释:#include<stdio.h>int main(int x, int y){ int z = x + y; return z;}int main(){ int a = 10; int b = 20; int c = 0; c =

2021-08-15 00:03:55 148 1

空空如也

空空如也

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

TA关注的人

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