单链表的反转可以用递归、非递归和栈的方法实现 链表节点定义: 1、栈 2、递归 利用递归,直到链表的最后一个节点,用一个指针指向该节点,作为反转后的链表的头节点 在递归返回的过程中,让该节点的下一个节点指向该节点$(head next next=head)$, 并让该节点指向$NULL$。这样就从链 ...
分类:
其他好文 时间:
2020-04-01 19:23:32
阅读次数:
79
1. _KWAIT_BLOCK解析 struct _KWAIT_BLOCK { struct _LIST_ENTRY WaitListEntry; //0x0 同一可等待对象的下一个等待块 struct _KTHREAD* Thread; //0x8 等待线程 VOID* Object; //0xc ...
分类:
其他好文 时间:
2020-03-31 18:56:19
阅读次数:
85
1. 斐波那契数列 显然,如果我们打算直接递归计算它的每个值,会有重复计算的部分,这个时候我们可以考虑把得到的值存起来,每次调用。 首先,会自然的想到用数组存下,每次计算下标的前两位的值。 但是随后我们边发现,其实每次都只需要保留最后两个数的值就能计算出下一个数的值了。这样减少了存储空间的占用。 2 ...
分类:
编程语言 时间:
2020-03-30 23:32:04
阅读次数:
100
一、多字节和宽字节 在多字节字符集下:一个字符对应1个字节,一个中文字符是2个字符,一个英文字符是1个字符 在宽字节字符集下:一个字符对应多个字节,汉字和英文字符都是一个字符,Unicode下是两个字节,utf-8下是三个字节 windows默认使用的是Unicode字符集 多字节转为宽字节,只需要 ...
以下操作符的使用必须要引入头文件<iomanip> 输出操作符号: 流操作符 描述 setw(n) 为下一个值的输出设置最小打印字段宽度为n fixed 以固定点(例如小数点)的形式显示浮点数 showpoint 显示浮点数的小数点和尾数0,即使没有小数点部分 setprecision(n) 设置浮 ...
分类:
编程语言 时间:
2020-03-30 09:41:13
阅读次数:
80
一、代理模式的定义 代理模式的定义:由于某些原因需要给某对象提供一个代理以控制对该对象的访问。这时,访问对象不适合或者不能直接引用目标对象,代理对象作为访问对象和目标对象之间的中介,代理模式也叫做委托模式。 二、为什么使用代理模式 中介隔离作用:在某些情况下,一个客户类不想或者不能直接引用一个委托对 ...
分类:
其他好文 时间:
2020-03-30 09:15:44
阅读次数:
75
首先我们通过一张图来说明什么是代理模式(后面会有具体的实例): 什么是代理模式?为什么要用代理模式?优缺点? 定义:客户端(Client)不直接调用真实对象,而是通过调用代理对象去调用真实对象。 为什么要用代理模式?: 在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和 ...
分类:
其他好文 时间:
2020-03-29 16:34:22
阅读次数:
95
责任链(Chain of Responsibility)模式的定义:为了避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。 责任链模式也叫职责链模式。 在责任链模式中,客户只需要将 ...
分类:
其他好文 时间:
2020-03-29 10:50:07
阅读次数:
78
主要特点手动配置静态路由需要管理员根据实际需要一条条自己手动配置,路由器不会自动生成所需的静态路由的。静态路由中包括目标节点或目标网络的IP地址,还可以包括下一跳IP地址(通常是下一个路由器与本地路由器连接的接口IP地址),以及在本路由器上使用该静态路由时的数据包出接口等。路由路径相对固定因为静态路由是手动配置的,静态的,所以每个配置的静态路由在本地路由器上的路径基本上是不变的,除非由管理员自己修
分类:
其他好文 时间:
2020-03-29 09:14:47
阅读次数:
255
VIM命令编辑 普通模式 vim + 文件 进入时就是正常模式 ESC 按 ESC 可回到正常模式 i 进入编辑模式,末行提示“插入”,可插入文本 I 或 shift + i 进入编辑模式,光标停在当前行开头 a 进入编辑模式,光标会停留在前一次光标的下一个位置 A 进入编辑模式,光标停留在当前行的 ...
分类:
系统相关 时间:
2020-03-29 01:39:44
阅读次数:
85