自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 WebServer

表示A向B请求调用一个网络IO接口的时候,向B传入请求的事件以及事件发生时通知的方式,A就可以处理其他逻辑了,当B监听到事件处理完成后,会用事先与欸的那个好的通知方式,通知A处理结果。表示A向B请求调用一个网络IO接口时,其数据的读写都是由请求方A自己来完成的(不管阻塞还非阻塞);在处理IO的时候,阻塞和非阻塞都是同步IO,只有在使用了特殊的API才是异步IO。数据读写:根据应用程序和内核的交互方式分为。数据就绪:根据系统IO操作的就绪状态分为。典型的一次IO的两个阶段,

2023-08-28 21:25:11 42

原创 Linux网络编程

如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为 1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特。2)数据链路层:建立逻辑连接、进行。

2023-08-02 16:38:39 100 1

原创 Linux多线程开发

与进程(process)类似,线程(thread)是允许应用程序并发执行多个任务的一种机制。。同一个程序中的所有线程均会独立执行相同程序,且,其中包括初始化数据段、未初始化数据段,以及堆内存段。(传统意义上的 UNIX 进程只是多线程程序的一个特例,该进程只包含一个线程)进程时CPU分配资源的最小单位,线程是操作系统调度执行的最小单位。线程是轻量级的进程(LWP),再Linux环境下线程的本质是进程查看指定进程的 LWP 号:ps –Lf pid。

2023-07-31 19:57:39 82 1

原创 7月25日-周二

首先要注意区间是左闭右开遍历,其次就是考虑各个边界情况,从外向内一圈一圈遍历,求出前缀数组后,匹配字符串的过程也是和求前缀数组的过程一样。本题考查的是KMP算法,其核心就是求子串的前缀数组,力扣28,找出字符串中第一个匹配项的下标。本题主要使用滑动窗口,注意滑动窗口的写法。力扣209,长度最小的子数组。力扣59,螺旋矩阵Ⅱ。

2023-07-25 22:21:22 29

原创 7月24日-周一

本体主要考虑边界问题,区间时左闭右闭还是左闭右开。和之前的移除字符串中的空格思路一样,双指针法。双指针法,需要注意的是往数组中填写结果的方法。力扣977,有序数组的平方。力扣704,二分查找。

2023-07-24 22:21:52 29

原创 Linux多进程开发

进程状态反映进程执行过程的变化,其随着进程的执行和外界条件的变化而转换。在三态模型中为:就绪态、运行态、阻塞态,在五态模型中:新建态、就绪态、运行态、阻塞态、终止态。为了管理进程,内核为每个进程分配了一个PCB进程控制块维护进程相关信息,LInux内核的进程块是task_struct结构体。并发:指同一时刻只能有一条指令执行,但多个进程指令快速的轮换执行,是的在宏观上具有多个进程同时执行的效果。任何进程都是有另一个进程创建的,该进程称为被创建进程的父进程。每个进程都由进程号来表示,其类型为pid_t整型。

2023-07-21 22:18:42 143 1

原创 7月21日-周五

本体的主要思路和之前的移除字符串中的多余空格一样,使用双指针,如果碰到目标元素则fast++,然后将fast的值赋给slow。本题的主要思路是对for循环中参数的设置,将i++换成i+=2k即可,然后对两种情况进行判断。剑指offer58,左旋字符串。力扣541,反转字符串Ⅱ。

2023-07-21 09:43:01 26 1

原创 7月19日-周三

删除字符串中多余的空格,方法1:分为三个阶段分别取出字符串开头中间和结尾的空格,注意去除多余空格的要改变字符串的大小的,并不是原地去除。本题的主要思路是在原字符数组上扩容,然后使用双指针法,从后向前写入数据。整体代码:需要注意reverse函数是左闭右开的,故要注意右区间的值。分为三个步骤:删除字符串中多余的空格,反转整个字符串,反转单个单词。去除字符串中的多余空格,方法2:遍历字符串,整体一起处理。力扣151,反转字符串中的单词。剑指offer,替换空格。

2023-07-19 15:50:32 29

原创 7月18日-周二

使用快慢指针,快慢指针从虚拟头节点出发,快指针先走n+1步,然后快慢指针同时移动直到快指针指向NULL,此时慢指针的后一个元素即是要删除的元素。这题需要注意的就是while循环中会出现空指针报错,需要在if判断后用else,不放在else中就会报错。注意:使用虚拟头结点在返回时不能返回head而要返回dummyHead->next。注意反转链表不是交换节点,而是反转节点的指向,这里使用双指针就行了。本体需要注意的就是交换两个节点的写法。力扣19,删除链表的倒数第N个节点。力扣24,两两交换链表中的节点。

2023-07-18 11:02:18 54 1

原创 7月17日-周一

使用双指针法,主要思路是将两个链表的尾部对齐,然后从短的一个链表的头结点开始遍历,如果相遇则相交,不相遇则不相交。主要分两个步骤:1)判断是否有环:使用快慢指针,如果快慢指针相遇说明有环。是由哈希法,注意创建一个26大小的数组来代替哈希表就行了。由上可得出从相遇节点和头结点出发,相遇的节点就是入环节点。主要注意点就是,在存放结果的时候要用哈希表来去重。力扣349,两个数组的交集。力扣242,有效字母异位词。力扣142,环形链表Ⅱ。力扣160,相交链表。

2023-07-17 09:59:47 33 1

原创 7月16日-周日

本体主要思路是分别求两个数组中数的和再相加判断是否为0来降低复杂度,通过哈希表来判断。这里面有很多细节:1)可以用一个哈希表来判断,2)判断是否为0时,不是次数++而是+=次数,因为可能有重复的。使用哈希法,遍历数组查找Map中是否有对应元素,有则返回,无则添加当前元素到哈希表中。关键丢就是求各个位上数的平方和。力扣454,四数相加Ⅱ。

2023-07-16 15:49:05 33 1

原创 7月15号-周六

整体思路和三数之和一样,只是在外面多加了一层循环,有两个容易出错的点:一是在剪枝时一顶要判断大于等于0,因为两个负数相加是会变小的;二是在第二个循环力剪枝时不能直接return res。核心思想是使用双指针,从数组头开始遍历,后面的区间使用双指针。使用哈希法,这里使用一个26大小的数组即可,这样可以节省空间,十分值得注意的是去重操作。

2023-07-15 19:42:20 33 1

原创 7月13日-周四

使用一个队列和两个队列都可以,使用一个队列就是在弹栈的时候将前面的元素重新从队列末尾加入队列然后弹出队头元素;使用两个队列就是在弹栈的时候将前面的元素放入第二个队列中,然后再放回来。需要使用两个栈,一个用于向队列添加元素,一个用于弹出队头元素。,比较栈顶元素和遍历到的元素,相等则弹栈,最后判断栈力还有没有元素。遍历字符串,如果栈顶元素和遍历到的元素不同则压栈,相同则弹栈。1、力扣1047,删除字符串中的所有相邻项。3、力扣225,用队列模拟栈。4、力扣232,用栈实现队列。使用一个队列的整体代码。

2023-07-13 11:13:23 35 1

原创 Linux系统编程

这是因为 make 本身存在一个默认的规则,能够自动完成对.c 文件的编译并生成对应的.o 文件,它执 行命令“cc -c”来编译.c 源文件。1、通常,在为调试而编译时,我们会()关掉编译器的优化选项(`-O`), 并打开调 试选项(`-g`)。Linux中静态库的后缀为libxxx.a,windows中静态库的后缀为libxxx.lib。Linux中动态库的后缀为libxxx.so,windows中动态库的后缀为libxxx.dll。=”: 条件赋值,在之前没有赋值的情况下才给变量赋值;

2023-07-12 22:15:54 60 1

原创 7月12日-周三

使用map统计元素频率,然后对频率进行排序,最后输出前k个高频元素对频率进行排序时要使用优先级队列注意到底是使用大根堆还是小根堆整体代码。

2023-07-12 14:40:11 31 1

原创 7月11日-周二

递归法只要翻转每个节点的两个子节点即可,遍历使用前序或者后序,中序遍历不可以整体代码迭代法使用层序遍历,翻转每个节点的两个子节点。

2023-07-11 10:27:52 34

原创 7月10日-周一

层序遍历,在统计size时depth++即可整体代码。

2023-07-10 11:08:12 46 1

原创 7月9号-周日

利用分别求出左右子树的左叶子之和,注意判断是否为左叶子节点。节点为空,节点的左右子树为空。​​​​​1.确定终止条件。力扣404,左叶子之和。

2023-07-09 15:07:52 34 1

空空如也

空空如也

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

TA关注的人

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