Appearance
附录 C · 术语中英对照表
按章组织的六级核心术语中英对照。英文以 C++ / 算法教材通用写法为准,中文以本书正文用法为准。
一、第 2 章 树的基本概念与遍历
| 中文 | 英文 | 说明 |
|---|---|---|
| 树 | tree | n 个节点、n−1 条边的连通无环图 |
| 根节点 | root | 没有前驱的唯一起始节点 |
| 叶子 / 叶节点 | leaf / leaf node | 度为 0 的节点 |
| 节点的度 | degree | 子树个数 |
| 树的度 | degree of tree | 所有节点度的最大值 |
| 深度 / 高度 | depth / height | 本书「深度」从 1 起算 |
| 子树 | subtree | 以某节点为根的那棵树 |
| 二叉树 | binary tree | 每个节点度 ≤ 2,左右有序 |
| 满二叉树 | full / perfect binary tree | 每层都填满 |
| 完全二叉树 | complete binary tree | 按层序编号连续 |
| 前序遍历 | preorder traversal | 根 → 左 → 右 |
| 中序遍历 | inorder traversal | 左 → 根 → 右 |
| 后序遍历 | postorder traversal | 左 → 右 → 根 |
| 层序遍历 | level-order traversal | 按层从左到右,用队列 |
| 递归 | recursion | 函数自身调用 |
二、第 3 章 哈夫曼树与特殊树
| 中文 | 英文 | 说明 |
|---|---|---|
| 哈夫曼树 | Huffman tree | 带权路径长度最小的二叉树 |
| 带权路径长度 | WPL (weighted path length) | Σ(权值 × 路径长度) |
| 哈夫曼编码 | Huffman coding | 前缀编码,用于压缩 |
| 前缀编码 | prefix code | 任一编码都不是另一编码的前缀 |
| 二叉排序树 | BST (binary search tree) | 左 < 根 < 右 |
| 平衡二叉树 | AVL tree | 六级不要求(📚 超纲) |
| 格雷编码 | Gray code | 相邻码只差一位,G(n)=n^(n>>1) |
| 异或 | XOR / exclusive or | C++ 运算符 ^ |
| 中序后继 | inorder successor | BST 删除两孩节点时的替代者 |
三、第 4 章 搜索算法
| 中文 | 英文 | 说明 |
|---|---|---|
| 深度优先搜索 | DFS (depth-first search) | 栈 / 递归实现 |
| 宽度(广度)优先搜索 | BFS (breadth-first search) | 队列实现 |
| 回溯 | backtracking | 选择 → 递归 → 撤销 |
| 剪枝 | pruning | 提前排除不可能的分支 |
| 访问标记数组 | visited array | 防止重复访问 |
| 连通块 / 连通分量 | connected component | 一次 DFS/BFS 覆盖的点集 |
| 迷宫 | maze | 网格最短路经典模型 |
| 方向数组 | direction array dx[]/dy[] | 四连通 / 八连通 |
| 状态空间 | state space | 搜索能到达的所有状态 |
| 最短路(无权) | shortest path (unweighted) | BFS 第一次到达即最短 |
四、第 5 章 简单动态规划
| 中文 | 英文 | 说明 |
|---|---|---|
| 动态规划 | DP (dynamic programming) | 六级的"简单动态规划" |
| 最优子结构 | optimal substructure | 大问题最优含小问题最优 |
| 重叠子问题 | overlapping subproblems | 子问题被反复计算 |
| 状态 | state | dp[i] / dp[i][j] 的含义 |
| 状态转移方程 | transition / recurrence | 核心递推式 |
| 边界 / 初始条件 | base case | dp[0] 等 |
| 01 背包 | 0/1 knapsack | 每件物品选或不选 |
| 完全背包 | unbounded knapsack | 每件物品可重复选 |
| 最大子段和 | maximum subarray sum | Kadane 算法 |
| 滚动数组 | rolling array | 只保留上一行,压空间 |
五、第 6 章 面向对象编程基础
| 中文 | 英文 | 说明 |
|---|---|---|
| 面向对象编程 | OOP (object-oriented programming) | 与面向过程相对 |
| 类 | class | 模板 / 蓝图 |
| 对象 | object / instance | 类的实例 |
| 成员(属性 / 方法) | member (attribute / method) | 数据成员 + 成员函数 |
| 封装 | encapsulation | 隐藏实现,暴露接口 |
| 继承 | inheritance | 子类复用父类 |
| 多态 | polymorphism | 同一接口,多种实现 |
| 访问控制 | access control | public / private / protected |
| 构造函数 | constructor | 与类同名,无返回值 |
| 析构函数 | destructor | ~类名(),无参数 |
| 初始化列表 | initializer list | A(int x) : a(x) {} |
| 虚函数 | virtual function | virtual 关键字 |
| 重写 / 覆盖 | override | 子类重定义虚函数 |
| 重载 | overload | 同名不同参(编译期) |
| 动态绑定 | dynamic binding | 运行时决定调用哪个版本 |
| this 指针 | this pointer | 指向当前对象 |
六、第 7 章 栈与队列
| 中文 | 英文 | 说明 |
|---|---|---|
| 栈 | stack | LIFO(后进先出) |
| 队列 | queue | FIFO(先进先出) |
| 循环队列 | circular queue | 取模回绕 |
| 优先队列 | priority queue | 最大/最小堆 |
| 入栈 / 出栈 | push / pop | pop() 不返回值 |
| 取栈顶 | top | 栈顶元素的引用 |
| 队首 / 队尾 | front / rear (back) | 队列两端 |
| 上溢 / 下溢 | overflow / underflow | 满时入 / 空时出 |
| 中缀 / 后缀表达式 | infix / postfix expression | 调度场算法转换 |
| 单调栈 | monotonic stack | 提高内容(📚 超纲) |
七、常用英文缩写速查
| 缩写 | 全称 | 中文 |
|---|---|---|
| DFS | Depth-First Search | 深度优先搜索 |
| BFS | Breadth-First Search | 宽度优先搜索 |
| WPL | Weighted Path Length | 带权路径长度 |
| BST | Binary Search Tree | 二叉排序树 |
| DP | Dynamic Programming | 动态规划 |
| OOP | Object-Oriented Programming | 面向对象编程 |
| LIFO | Last In First Out | 后进先出 |
| FIFO | First In First Out | 先进先出 |
| STL | Standard Template Library | 标准模板库 |
| IDE | Integrated Development Environment | 集成开发环境 |
八、易混术语辨析
| 对比 | 区别 |
|---|---|
| 满二叉树 vs 完全二叉树 | 满 ⊂ 完全;满要求每层填满,完全只要求按层序编号连续 |
| 深度 vs 高度 | 深度自上而下,高度自下而上;本书统一按题目给出的定义计算 |
| 前序 / 中序 / 后序 | 区别在于"根"什么时候被访问 |
| DFS vs BFS | 栈 vs 队列;求全部方案用 DFS,求最短路用 BFS |
| 01 背包 vs 完全背包 | 一维优化时 01 倒序、完全正序 |
| 重载 vs 重写 | 重载同名不同参(编译期);重写虚函数签名相同(运行期) |
| 栈 vs 队列 | LIFO vs FIFO |
| 循环队列判空 vs 判满 | 空 front==rear;满 (rear+1)%size==front |
九、常见英文报错 → 中文对照
| 报错信息(英文) | 含义 | 常见原因 |
|---|---|---|
segmentation fault | 段错误 / 内存访问越界 | 数组越界、空指针、递归层数过深 |
stack overflow | 栈溢出 | 递归没有终止条件或层数太深 |
expected ';' before ... | 缺少分号 | 类定义末尾漏写 ;(类最容易忘) |
'xxx' is not a member of ... | 成员不存在 | 名字拼错或未声明 |
cannot declare variable to be of abstract type | 抽象类不能实例化 | 含纯虚函数 |
invalid use of incomplete type | 类型未完整定义 | 只前置声明未包含头文件 |
no matching function for call to ... | 找不到匹配的函数 | 参数类型/个数不对 |
undefined reference to ... | 未定义的引用 | 函数声明了但没实现 |
'this' was not declared | this 不可用 | 在静态成员函数里用了 this |
expression cannot be used as a function | 表达式被当函数调用 | 变量名与函数名冲突 |
术语以本书正文用法为准;英文拼写以 C++ 官方写法为准。
