前言



本书是系列教材《数据结构——从概念到C实现》《数据结构——从概念到C++实现》《数据结构——从概念到Java实现》中的一部。全书在概念的描述、实例的选择、知识的前后衔接、内容的组织结构,以及教学内容的理解、教学目标的实现、教学意图的融入、教学方法的运用等方面进行了系统思考和统筹设计,力图为读者构建多层次的知识体系,如图1所示。在问题求解层面,以数据表示和数据处理为主线,提出并贯彻“问题→想法→算法→程序”的思维模式;在存储结构层面,通过存储示意图理解数据表示,再给出存储结构定义;在算法设计层面,采用抽象分级的教学方法,通过伪代码描述算法,注重培养计算思维;在算法分析层面,理解什么是“好”算法,给出算法分析的基本方法;在程序实现层面,给出所有数据结构和典型算法的C程序源码;在实际运用层面,通过应用实例展示为待求解问题设计适当的数据结构、基于数据结构设计算法、基于算法构造程序的过程,从而将数据结构、算法和程序有机地融合在一起。
图1构建多层次的知识体系
“数据结构——从概念到实现”系列教材出版以来,发行量超过30万册,在使用过程中得到国内许多高校教师和学生的肯定,他们也提出了一些很好的建议。本书在保留系列教材原有特色的基础上,进行了如下修订。
(1) 按照《全国硕士研究生招生考试计算机科学与技术学科联考计算机学科专业基础考试大纲》(以下简称《考试大纲》)重新组织目录,梳理知识模块之间的拓扑结构,如图2所示,增加红黑树、外部排序等相关内容。
数据结构——从概念到C实现(第2版)前言图2知识模块之间的拓扑结构
(2) 基于工程认证理念,按照布鲁姆教学目标分类,重写了每章的教学目标,使得教学目标可落实、可衡量。数据结构课程的教学目标如下。
① 描述基本数据模型的逻辑特征,分析和评价数据模型的不同存储方法,进行存储结构定义;针对计算机领域的工程问题,构建数据模型、设计存储结构。
② 描述数据结构的基本操作、经典算法、常用查找技术和排序技术的执行过程,对重要的算法进行复现;针对计算机领域的工程问题,进行算法设计并运用大O记号进行算法性能分析。
③ 针对计算机领域具有时空性能约束的复杂工程问题,应用数据结构的设计原则和实现方法,通过比较、选择、优化等过程,设计合理的存储结构和解决方案,进行数据表示、算法描述和程序实现。
(3) 每章增加了“考研加油站”,给出了研究生入学考试(科目代码408)数据结构部分的历年考研真题。删除了每章的课后习题,将习题以作业册的形式独立出来,并且给出了作业题和课程目标之间的支撑关系。教师可关注微信公众号“老竹园”,下载作业册的参考答案。
(4) 每章增加了附配的教学资源,包括教学课件、程序源码、考研真题答案,读者可以扫描书中的二维码获取。其中,部分课件进行了更新,部分程序源码重新进行了调试。
(5) 提供了课程思政参考案例,随着教学内容的展开融入思政元素,讲好中国文化与中国故事,增强育人效果。
(6) 提供了作业平台,读者可以扫描封底的“作业系统二维码”登录平台。
参加本书编写的还有王涛、董亚则、王贵参、刘冰、党源源、肖巍等老师,微信公众号“老竹园”由张丽杰老师建立和维护。由于作者的知识和写作水平有限,书稿虽再三斟酌几经修改,仍难免有缺漏和错误,欢迎专家和读者批评指正。
微信公众号“老竹园”、作者微信(“老竹园-王红梅”)及思政参考案例二维码如下:
微信公众号“老竹园”
作者微信
思政参考案例


作者2023年1月