持续累积
最近文章
-
哈希和哈希表
把串当成一个 b 进制数,一个串就映射成了一个数;判两个串是否相等,比一下 hash 值就行。
-
最近公共祖先 LCA:倍增、ST 与 Tarjan
最近公共祖先(Least Common Ancestor)对于有根树 T 的两个结点 u 、 v ,最近公共祖先 LCA(u,v) 表示一个结点 x ,满足 x 是 u 和 v 的祖先且 x 的深度尽可能大。
-
最小生成树 MST:Kruskal 与 Prim
一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边,称作最小生成树 (Minimum Spanning Tree, MST) 。
-
素数筛法:从埃氏筛到欧拉筛
素数又称质数,是指一个大于 1 的正整数,如果除了 1 和它本身以外,没有其他的约数,例如 2,3,5,7,3021377 等,反之就是合数。
-
RMQ 区间最值问题:ST 表
RMQ (Range Minimum/Maximum Query) 问题是指:对于长度为 n 的数列 A ,回答若干询问 RMQ(A,i,j) (i,j\le n) ,返回数列 A 中下标在 i , j 里的最小(大)值。
-
线段树
线段树是用来处理在序列上单点修改区间询问(或是区间修改,单点询问,甚至是区间修改、区间询问)的问题的一种数据结构。
-
最短路问题:从 Dijkstra 到 Johnson
最短路问题 (short-path problem) 是网络理论解决的典型问题之一,可用来解决管路铺设、线路安装、厂区布局和设备更新等实际问题。
-
强连通分量:Kosaraju 与 Tarjan
在有向图 G 中,如果两个顶点 v_i,v_j 间有一条从 v_i 到 v_j 的有向路径,同时还有一条从 v_j 到 v_i 的有向路径,则称两个顶点强连通 (strongly connected) 。
-
程序内存布局详解
最近计导课准备教关于指针的相关内容,但我对于程序在内存中的数据存储仍有些疑问,于是我进行了下面的研究。
-
x86 汇编基础:寄存器与标志位
不同的寄存器(32 位、16 位、8 位的对应关系,F 的个数就是位数除以 4,也就是对应的十六进制掩码宽度)。