Skip to content

本册知识结构总结

恭喜你完成了数据结构基础篇的学习!本章对全书内容进行系统回顾。


知识体系概览

数据结构基础
├── 线性结构
│   ├── 数组
│   ├── 字符串
│   ├── 链表
│   ├── 栈与队列
│   └── 单调栈/队列
├── 哈希结构
│   └── 哈希表
├── 树形结构
│   ├── 二叉树
│   └── 二叉搜索树
├── 堆
│   └── 优先队列
└── 位运算

各部分核心要点

数组

  • 双指针技巧
  • 滑动窗口
  • 前缀和
  • 原地操作

字符串

  • KMP 模式匹配
  • 字符串哈希
  • 双指针处理

链表

  • 快慢指针
  • 虚拟头节点
  • 递归思想

栈与队列

  • 括号匹配
  • 表达式求值
  • BFS/DFS

单调栈

  • 下一个更大元素
  • 柱状图最大矩形
  • 滑动窗口最值

哈希表

  • O(1) 查找
  • 两数之和模式
  • 去重与计数

二叉树

  • 前中后序遍历
  • 层序遍历
  • 递归与迭代

BST

  • 中序有序性
  • 查找/插入/删除
  • 验证与构造

  • 优先队列
  • Top K 问题
  • 多路归并

位运算

  • 异或技巧
  • Brian Kernighan
  • 状态压缩

常用时间复杂度

数据结构查找插入删除
数组O(n)O(n)O(n)
链表O(n)O(1)O(1)
哈希表O(1)O(1)O(1)
BSTO(h)O(h)O(h)
O(n)O(log n)O(log n)

解题思维导图

  1. 理解问题:输入输出、边界条件
  2. 识别模式:属于哪类问题
  3. 选择数据结构:根据操作需求
  4. 设计算法:暴力→优化
  5. 编码实现:注意边界处理
  6. 测试验证:特殊用例

刷题建议

  • 按专题刷:先掌握一类再进入下一类
  • 先理解后记忆:理解为什么这么做
  • 手写代码:不要只看答案
  • 总结模板:建立自己的代码库
  • 定期复习:遗忘曲线
本册知识结构总结 has loaded