数据结构精讲

这个分类在干嘛?

逐章精讲 Mark Allen Weiss《Data Structures and Algorithm Analysis in C++》(第4版)——数据结构与算法分析的经典教材。原书 650 余页,这里用初学者视角重写成 13 篇中文笔记:概念先讲”是什么/为什么”,代码逐段解释,复杂度分析一步步推,每篇末尾有折叠自测题。

13 篇导航

章节内容一句话
01C++ 编程基础类、指针引用、Big-Five、模板
02算法分析大 O 记号与运行时间估算
03表、栈、队列线性结构三件套与实现
04二叉树、BST、AVL、B 树
05散列哈希函数与冲突解决
06优先队列(堆)二叉堆、d 堆、左式堆
07排序插入/希尔/堆/归并/快排全家族
08不相交集类等价关系与Union-Find
09图算法遍历、最短路、网络流、MST
10算法设计技术贪心、分治、动态规划、回溯
11摊还分析聚合、核算、势能三种方法
12高级数据结构与实现红黑树、kd 树、配对堆等
13附录:类模板的分离编译模板工程实践

学习建议

  • 01→02 是地基:C++ 细节 + 大 O 分析,后面每一章都在用
  • 03→08 是数据结构主线:线性结构 → 树 → 散列 → 堆 → 排序 → 并查集,层层递进
  • 09 图算法是面试与竞赛的重中之重,建议重点消化
  • 10 算法设计技术把前面所有结构串成解题方法论,DP 一节值得反复读

通关标准

学完本分类,你应该能:手写 BST/AVL/堆/哈希表/并查集、说清每种排序的适用场景与复杂度、用图算法建模最短路与拓扑排序问题、用贪心/分治/DP 拆解新题。