Skip to content

附录 C · 术语中英对照表 ​

按章组织的七级核心术语中英对照。英文以 C++ / 算法教材通用写法为准,中文以本书正文用法为准。


一、第 2 章 数学库函数 ​

中文英文说明
头文件 <cmath>cmath header数学函数的家
弧度radian三角函数的参数单位
角度degree需 × π / 180 转弧度
三角函数trigonometric functionsin / cos / tan
反正切arctangentatan / atan2
对数logarithmlog(ln) / log10 / log2
自然对数natural logarithm底为 e ≈ 2.718
指数函数exponential functionexp(x) = eˣ
幂powerpow(a, b) = aᵇ,返回 double
平方根square rootsqrt(x)
向上取整 / 向下取整ceiling / floorceil / floor
四舍五入roundround(x)
绝对值absolute valueabs(int) / fabs(double)
精度 / 误差precision / error浮点运算固有
误差范围epsilon (eps)通常取 1e-9
圆周率常量pi constantM_PI 或 acos(-1.0)

二、第 3 章 复杂动态规划 ​

中文英文说明
动态规划DP (dynamic programming)七级为"复杂动态规划"
二维动态规划2D DPdp[i][j]
最值优化optimization over DP答案取 max/min
区间动态规划interval DP先枚举长度,再枚举起点和分割点
最长上升子序列LIS (longest increasing subsequence)答案 = max(dp)
最长公共子序列LCS (longest common subsequence)经典二维 DP
子序列subsequence不要求连续
子串 / 子数组substring / subarray必须连续
滚动数组rolling array降空间复杂度
状态压缩state compression把二维压成一维
记忆化搜索memoized search / memoization与递推 DP 等价
状态转移方程transition equation核心递推式
边界条件base case初始状态
贪心(对比)greedy不回头,不一定最优

三、第 4 章 图的定义及遍历 ​

中文英文说明
图graph顶点集 + 边集
顶点vertex / node复数 vertices
边edge连接两个顶点
有向图 / 无向图directed / undirected graph边是否有方向
度degree无向图的边数
入度 / 出度in-degree / out-degree有向图分开算
完全图complete graph任意两点有边
连通 / 连通分量connected / connected component互相可达的点集
稠密图 / 稀疏图dense / sparse graph决定存储方式
邻接矩阵adjacency matrixg[n][n],O(n²)
邻接表adjacency listvector<int> g[n],O(n+m)
深度优先搜索DFS递归 / 栈
宽度优先搜索BFS队列
访问标记visited防重复访问
距离数组distance array dist[]BFS 中的层数
拓扑排序topological sort📚 拓展 · 超纲
强连通分量strongly connected component📚 拓展 · 超纲

四、第 5 章 泛洪算法 ​

中文英文说明
泛洪算法flood fill种子填充
种子点seed扩散的起点
连通区域connected region同色/同类的连片区域
四连通4-connectivity上下左右 4 个方向
八连通8-connectivity再加 4 个对角线方向
方向数组direction array dx[]/dy[]遍历邻居
岛屿数量number of islands经典 Flood Fill 题
边界检查boundary check越界访问是头号 BUG
递归深度recursion depth过大导致栈溢出
栈溢出stack overflowDFS 实现的隐患

五、第 6 章 哈希表 ​

中文英文说明
哈希表 / 散列表hash table键 → 存储位置
哈希函数hash function常用除留余数法
哈希值hash value函数的输出
键 / 值key / value键值对
哈希冲突hash collision不同的键映射到同一位置
鸽巢原理pigeonhole principle冲突不可避免的依据
链地址法separate chaining同位置挂链表
开放寻址法open addressing另找空位
线性探测linear probing顺序往后找
二次探测quadratic probing按平方步长找
二次聚集(堆积)primary clustering线性探测的副作用(注:中文教材常称《二次聚集》,英文对应 primary clustering;secondary clustering 指二次探测 quadratic probing 的聚集)
再哈希法(多哈希函数法)multiple hashing(rehashing 也常指《扩容重哈希》)准备多个完整哈希函数,H₁ 冲突时换用 H₂
装填因子 / 负载因子load factorα = 元素数 / 表长
墓碑标记tombstone开放寻址删除时不能真删
有序映射(红黑树)map (red-black tree)O(log n),有序
无序映射(哈希)unordered_map平均 O(1),无序
两数之和Two Sum哈希表经典应用

六、常用英文缩写速查 ​

缩写全称中文
DPDynamic Programming动态规划
LISLongest Increasing Subsequence最长上升子序列
LCSLongest Common Subsequence最长公共子序列
DFSDepth-First Search深度优先搜索
BFSBreadth-First Search宽度优先搜索
epsepsilon浮点误差范围
NaNNot a Number非数字(如 sqrt(-1))
STLStandard Template Library标准模板库
O(1)constant time常数时间

七、易混术语辨析 ​

对比区别
log vs log10 vs log2底分别是 e、10、2
子序列 vs 子串子序列可不连续,子串必须连续
递推 vs 记忆化搜索递推自底向上,记忆化自顶向下;结果等价
滚动数组 vs 状态压缩本书语境下均指"用更少的空间存 DP"
邻接矩阵 vs 邻接表稠密图用矩阵(O(n²)),稀疏图用表(O(n+m))
四连通 vs 八连通4 个方向 vs 8 个方向(含对角线)
链地址法 vs 开放寻址一个挂链表,一个在表内找空位
map vs unordered_map红黑树有序 O(log n) vs 哈希表无序 O(1)
入度 vs 出度有向图中指向自己 / 从自己出发的边数

八、常见英文报错 → 中文对照 ​

报错信息(英文)含义常见原因
'log10' was not declared in this scope函数未声明漏 #include <cmath>
cannot convert 'double' to 'int'double 不能隐式转 intpow() 返回值直接赋给 int / 当下标
invalid operands of types 'int' and 'double'类型不匹配混用 abs 与浮点
segmentation fault内存访问越界数组越界、递归层数过深
stack overflow栈溢出DFS 递归太深(Flood Fill 常见)
bad_alloc内存分配失败开了过大的二维数组(如 dp[10000][10000])
no match for 'operator[]'下标运算符不匹配对 unordered_map 用了不存在的键类型
expected initializer before ')'语法错误括号/分号漏写

术语以本书正文用法为准;英文拼写以 C++ 官方写法为准。

百炼成钢,融会贯通