
张新华
详细介绍链表、堆栈、队列、树、图等基础数据结构的相关知识,同时配有难易适中的习题,增强实战感。
这本书堪称算法竞赛选手的"九阳神功心法",用庖丁解牛的方式将看似枯燥的数据结构拆解成可实战的武器库。作者摒弃了传统教材的学院派讲解,直接从ACM真题切入,在解题过程中自然引出各种数据结构的精髓。比如用"滑动窗口最大值"这道经典问题,就生动演绎了双端队列从原理到变种的完整知识链条。 最精彩的是对平衡树族谱的系统梳理。从最简单的Treap到工业级的红黑树,再到比赛常用的Splay树,作者用统一的旋转操作框架串起这些复杂结构,让读者真正理解"平衡"的本质是维护某种不变式。特别欣赏书中独创的"数据结构选择决策树"——面对问题时按照查询类型、数据规模等维度快速锁定最适合的容器,这种实战思维正是竞赛与工程的核心差距。 书中每个章节末尾的"防坑指南"尤为珍贵。那些用WA(Wrong Answer)换来的经验,比如线段树懒标记的常见错误,或是并查集路径压缩的注意事项,往往比正文更让选手受用。这种将失败经验转化为预防性知识的写法,展现了作者深厚的竞赛教练功底。