-
北航BUAA计网实验期末复习
考试前记得undo vlan 1 的 IP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 考试前记得undo vlan 1 的 IP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 考试前记得undo vlan 1 的 IP... -
线段树
单点修改区间查询 区间和 给定长度为$N$的数列$A$,以及$M$条指令,每条指令可能是以下两种之一: 1 x y,查询区间$[x,y]$ 中的最大连续子段和 2 x y,把$A[x]$改成 $y$。 对于每个查询指令,输出一个整数表示答案。 输... -
杂项算法
找树的直径
定义:树中距离最远的两点
1.任取一点作为起点,找到距离该点最远的一个点u
2.再找到距离u最远的一点v
u和v之间的路径就是一条直径
-
树状数组
树状数组
树状数组能处理的是下标为1~n的数组
考虑使用的情况:求前缀和、修改区间中的某个数,时间复杂度均为logn
基本思想
将x分解为二进制x = 2i1 + 2i2+…+2im (i1 > … > im)
则可以将[1,x]的区间划分为[1, 2i1],[2i1+1,2i1+2i2],[2i1+2i2+1, 2i1+2i2+2i3] …,[2i1+2i2+…+2im-1 +1,2i1+2i2+…+2im ]这些区间
c[x]保存序列a区间[x-lowbit(x) + 1, x]中所有数的和
C[i] = A[i - 2k+1] + A[i - 2k+2] + … + A[i]; //k为i的二进制中从最低位到高位连续零的长度
该结构满足以下性质:
(1)每个内部节点c[x]保存以他为根的子树中所有叶节点的和
(2)每个内部节点c[x]的子节点数等于lowbit(x)的大小
(3)除数根外,每个内部节点c[x]的父节点是c[x+lowbit(x)]
(4)树的深度为O(logN)
-
Trie树
基本思想
高效地存储和查找字符串集合的数据结构,存储的字母或者数字种类不能太多
-
LCA
LCA
朴素作法
对于每次询问,分别从两点出发,遍历所有祖先节点找到相同的节点
-
Shell学习笔记
SHELL编程
零碎知识点
echo -e "lbh666\tyzsb"
-e使字符串可以转义printf
命令类似C语言,printf "%d %d" 1 2
-
OS预习
《IDT R30xx Family Software Reference Manual》阅读笔记
CP0寄存器 作用 CP0编号 SR (状态寄存器)CPU模式标志 12 Cause 描述最近识别的异常 13 EPC 来自trap的返回地址 14 BadVaddr 包含导致trap的最后一个无效程序地址。它是由各种地址错误设置的,即使没有MMU 8 -
Makefile学习
使用
1
make
makefile的规则
1
2
3
4target ... : prerequisites ...
command
...
... -
gcc学习
过程
C 或者 C++ 程序从源代码生成可执行程序的过程,需经历 4 个过程,分别是预处理、编译、汇编和链接
参数
gcc -E
1
-E(大写) 预处理指定的源文件,不进行编译。
- gcc -E 指令只会将预处理操作的结果输出到屏幕上,并不会自动保存到某个文件。因此该指令往往会和 -o 选项连用,将结果导入到指令的文件中