ThinkLab

Next Door 0.5x Engineer

拓扑排序

发布于

算法笔记:拓扑排序 (Topological Sorting) 拓扑排序是图论中一项非常基础且实用的算法技术。在处理具有依赖关系的任务规划、模块编译排序等问题时,拓扑排序提供了标准且高效的解决方案。 ...

继续阅读 →

深入理解模运算

发布于

在算法与程序设计中,当计算结果过大(超出 64 位整数的范围)时,通常需要将答案对某个特定数值(如 $10^9 + 7$)取模。若处理不当,极易导致计算结果错误(WA)或因大整数运算导致超时(TLE)...

继续阅读 →

KMP算法

发布于

KMP 算法(Knuth-Morris-Pratt 算法)是一种高效的字符串匹配算法。相较于传统的暴力匹配方法,KMP 算法的核心优势在于:在发生不匹配时,主串(被搜索的文本)的指针不需要回退。通过充...

继续阅读 →

Arch Wiki学习笔记

发布于

前言 对于Arch Linux Wiki的阅读学习内容记录。 Boot流程 当按下计算机的电源按钮后,屏幕亮起,随后出现操作系统界面——这看似短暂的几秒钟内,计算机内部其实经历了一场复杂且精密的“接力...

继续阅读 →

模运算优化

发布于

在计算机科学与算法竞赛中,模运算优化(Mod Optimization)是处理超大整数运算、避免数值溢出以及降低常数级时间复杂度的核心技术。本笔记将系统化地解析模运算的数学原理、代码实现机制、乘法逆元...

继续阅读 →

编译器相关x86指令

发布于

数据移动:mov mov dest, src 作用:把 的值复制到 。 常见形式: `asm mov rax, rdi ; 寄存器 -> 寄存器 mov rax, [rdi] ; 内...

继续阅读 →

编译器主要topic(上半部分)

发布于

编译器课程里最容易“碎片化”的内容,往往不是某一条规则本身,而是这些规则之间的因果关系:为什么前端要做名字解析,为什么中间表示偏爱 SSA,为什么 tail call 和 non-tail call ...

继续阅读 →

BusTub MVCC

发布于

BusTub 中 MVCC 工作原理 CMU 的教学数据库系统 (BusTub),实现了典型的 多版本并发控制 (MVCC) 机制。 核心数据结构 1.1 UndoLink(版本链指针) `cpp ...

继续阅读 →

探索主题