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 综合题,并保留可复算的解题检查点。

相关教材