C01 / undergraduate

数据结构、算法与复杂度

数据结构、算法与复杂度围绕第一编 数据结构、第二编 算法设计、第三编 复杂度与综合复习建立连续章节顺序。

结构
3 编 · 6
适合读者
适合已具备基础代数与函数知识、希望完成本科层次系统学习的读者。
开始本册

BEFORE READING

先修与记号

本册对象

研究数据组织、经典算法、复杂度分析和可计算性的基本边界。

先修教材

符号约定

  • 本册在首次使用时定义数据结构、算法与复杂度专用符号,并区分标量、向量、算子与单位。
  • 同一符号出现多种约定时明确命名空间、假设和适用章节。

CONTENTS

完整目录

PART 01

第一编 数据结构

第一编 数据结构组织序列、栈、队列、树与堆、哈希表、图与并查集,形成连续的学习单元。

  1. 01

    序列、栈、队列、树与堆

    以抽象数据类型和不变量比较数组、链表、栈、队列、搜索树及堆,分析基本操作的正确性、时间复杂度和存储代价。

    阅读本章
  2. 02

    哈希表、图与并查集

    用散列函数与冲突策略实现字典,以邻接结构表示图,并通过并查集和摊还分析支持动态连通性。

    阅读本章
PART 02

第二编 算法设计

第二编 算法设计组织分治、贪心与排序、动态规划与图算法,形成连续的学习单元。

  1. 03

    分治、贪心与排序

    从子问题结构建立分治递推和合并步骤,证明比较排序的复杂度,并用交换论证或切分性质验证贪心选择。

    阅读本章
  2. 04

    动态规划与图算法

    通过状态、转移和最优子结构构造动态规划,使用遍历、最短路和最小生成树算法处理图问题并证明正确性。

    阅读本章
PART 03

第三编 复杂度与综合复习

第三编 复杂度与综合复习组织渐近复杂度、归约与可计算性、数据结构与算法综合复习,形成连续的学习单元。

  1. 05

    渐近复杂度、归约与可计算性

    用渐近上界、下界和摊还成本比较算法,通过多项式时间归约理解困难性,并由停机问题说明可计算性的根本边界。

    阅读本章
  2. 06

    数据结构与算法综合复习

    围绕问题建模、数据结构不变量、算法正确性和复杂度选择方法,比较分治、贪心、动态规划与图算法的适用条件。

    阅读本章

综合练习

  • 每章安排定义辨析、推导计算和结果核验练习。
  • 本册末章安排跨 Part 综合题,并保留可复算的解题检查点。

相关教材