前言
本书凝聚了编者团队二十余年数据结构教学的研究积淀。在长期一线教学中,编者发现基础薄弱的学生常陷入数据结构理论抽象性与实践实现性的双重困境。编者探究教学实践过程中如何实现从抽象知识到程序实现,从抽象算法到实际应用的转换方法;同时,借助数据结构的算法仿真软件将重要的算法、经典的案例实现动态交互式的跟踪演示。因此,本书注重培养学生的编程兴趣和自信心,帮助他们克服对“数据结构”课程中编程的恐惧心理,享受编程带来的乐趣。
本书系统阐述数据结构的基本理论、算法设计与分析方法,全面涵盖线性表、树、图等核心数据结构及查找、排序等经典算法,所有内容均采用Java语言实现并体现面向对象思想。通过精心设计的趣味案例引入和详尽的算法解析,显著降低理论抽象性,强化工程实践能力,凸显“理论扎实、思想深入、应用突出”三大特色,有效提升学生的算法思维与工程实践能力。配套提供完整的数字化教学资源。
本书遵循计算机解决现实问题的思路,按照“现实问题→抽象数据类型→存储结构→算法→程序→解决问题”的路径,通过循序渐进的内容设计与生动有趣的教学案例逐步深入介绍数据结构的知识点。
本书编写的特色体现在以下几方面。
1. 由易到难,贯彻分治法思想
本书内容编排遵循由易到难的原则,逐步提升学生的理解能力和编程技能。同时,全书贯穿分治法思想,帮助学生掌握复杂问题的分解与解决策略。
2. 仿真软件辅助教学
引入仿真软件模拟重要算法的执行步骤,让学生直观看到代码底层的运行情况,降低理解难度,增强学习兴趣。
3. 问题导向,学以致用
通过实际问题的引入,引导学生思考并解决问题,将理论知识与实际应用紧密结合,培养学生的实践能力和创新思维。
4. 经典算法与有趣案例
结合经典算法和有趣案例,让学生在轻松愉快的氛围中学习数据结构,感受编程的乐趣。
本书由曾鸣编写了第2~4、6、7章的内容,张忠良编写了第1章和第9章的内容,雒兴刚编写了第5章和第8章的内容。另外,本书得到了杭州电子科技大学数据科学与智能决策实验中心的资助。在此,感谢杭州电子科技大学管理学院杨伟院长、张忠良副院长和胡保亮副院长对本书的大力支持!此外,本书在编写过程中得到了杭州电子科技大学管理学院研究生们的帮助,王宇、熊纪园、王婧雯、俞攀阳、魏丙甲、符思睿、李京龙、杨玲玲等参与了文字图表校对工作和有关程序的调试工作,在此表示由衷的感谢。
因编者水平有限,书中难免存在疏漏与不足,恳请批评指正。
编者
2026年4月数据结构(Java版)
