◆ ◆
个人介绍
数据结构

主讲教师:易法令

课程介绍
教学目的:使学生深透地理解数据结构的逻辑结构和物理结构的基本概念以及有关算法,学会根据实际问题要求来选择数据结构; 掌握设计算法的步骤和算法分析方法;掌握数据结构在排序和查找等常用算法中的应用,培养基本的、良好的程序设计技能,编制高效可靠的程序,使学生获得编写结构、正确易读、符合软件工程规范的理论、技巧和能力,为学习操作系统、编译原理和数据库等课程奠定基础。
教学内容:本课程主要讲解数据结构和算法设计与分析的基本知识,各种基本数据结构的定义,存储结构、相应的算法以及应用;包括线性表的基本概念,顺序表和链表的表示与相应算法的实现;栈和队列的基本概念、表示与相应算法的实现;树、二叉树的基本概念和术语,以及二叉树的遍历和哈夫曼树及其应用;图的基本概念和术语,图的表示、遍历和最短路径、关键路径等算法的描述;各种查找算法和内部排序方法。
考核方式:考试;其中理论考试占60%;实验考试占30%,平时成绩占10%(按教务处有关要求)。

学好数据结构的若干建议

如何学习好数据结构课程呢?就这个问题给出几点建议:

(1)从数据结构课程在计算机专业课程中定位(也就是宏观角度)理解数据结构课程。

C/C++程序设计 —>数据结构—>算法设计与分析

这个课程序列是培养用计算机求解问题的能力,简单地说计算编程能力。

C/C++程序设计课程是学习使用高级语言的能力,属于语言层面,需要掌握语法和简单应用,类似于“识字”。

算法设计与分析才是真正解决问题,运用计算思维方法设计问题的算法。

而数据结构是两者的过渡,一个算法用于数据处理,数据需要存储,采用什么结构存储呢?所以数据结构的定位是学习数据的基本组织和处理方法。

(2)数据结构课程总体观

在算法设计中提炼出一些常用的数据结构并实现,这些数据结构就是数据容器,可以存放多个数据,并且有相应的功能。

如何设计这些数据结构呢?

首先从逻辑上理解这些数据结构,每个数据结构包含哪些数据元素,元素之间是什么关系,也就是逻辑结构,有哪些功能,也就是运算,这个时候是运算描述。这些都是逻辑层面的概念。逻辑结构可以用多种方式表示,如图、表或者二元组。

逻辑结构和运算描述合起来就是一个问题表示,构成ADT。ADT是一个求解问题的表示。

再进入实现层面,就是实现一个数据结构,在算法中可以直接使用它。先将逻辑结构存放在计算机内存中,称为存储结构,再在存储结构上实现运算描述对应的算法。

所以数据结构总体观是:逻辑结构---存储结构---运算。

逻辑结构 ,有多种存储结构,存储结构设计好坏决定算法的好坏。

算法的好坏通过时间空间分析得到,称为算法分析。

数据结构有多个,按逻辑结构进行划分,有线性结构(多个,如线性表、栈、队列等等),树形结构、图结构。

通过学习一个一个数据结构的实现,掌握基本的数据的基本组织和处理方法。

(3)如何学习好每个数据结构?

每个数据结构都包含若干个知识点,知识点之间的联系构成知识结构,有基本知识点(最低层),有中间层知识点,有更高层知识点。

以线性表为例,有顺序存储结构和链表,基本知识点就是掌握它们之间的相同点和不同点。

链表又分为单链表、双链表和循环链表。

以单链表为例,单链表的特点、插入和删除操作就是基本知识点

ð创建单链表(中间层知识点,有头插法和尾插法)

ð单链表应用(删除所有值为x的结点),属于更高层知识点,如这个问题可以采用尾插法实现。

再以二叉树为例,二叉树的存储结构如二叉链就是基本知识点ð二叉树遍历算法(中间层知识点,有先序、中序、后序和层次遍历) ð遍历算法应用(求所有结点个数,求高度、该某结点层次等等),属于更高层知识点,这些问题都可以采用遍历算法实现。

(4)动手实验,编写n多程序

任何知识的掌握都需要下功夫,知识和知识的掌握是不同的,老师教给我们的是知识,而知识的掌握是自己的,是个性化的,只有通过自已的实训才能得到。

对于一个学计算机专业的学生,只有编写和调试n多的程序,才会获得编程能力。只想听几堂课而不经过大量课外研习和上机实践就想获取这种“能力”是不可能的。

掌握每个数据结构的基本内容包括:每个数据结构的应用,求解问题灵活运用哪些数据结构设计出好的算法。

(5)善于总结

知识的掌握需要自己多总结。

如递归,递归是一种求解问题的通用方法,在二叉树和图的算法设计中都用到,实际上就是把一个大问题转换为若干相似的小问题来求解。

以二叉树算法:求所有结点个数,设f(b)求二叉树b的结点个数,f(左孩子)求二叉树b的左孩子的结点个数,f(右孩子)求二叉树b的右孩子的结点个数,f(b)=f(左孩子)+ f(右孩子)+1。

像图算法设计也是如此!

如果总结算法的多维性,像求解迷宫问题,可以用栈、队列、递归、图遍历等等方法求解。

如果按照这样的方法去学习,那么你的数据结构内容就充分掌握了,不仅不会害怕考试还可以参加相关比赛。



参考教材

选用教材:

《数据结构教程》第2版,易法令主编,武汉大学出版社,2026年

主要参考书目:

1.《数据结构——使用C语言(第7版)》,朱战立主编,电子工业出版社,2025年  

2.《数据结构学习辅导与实验指导:从概念到实现》,王红梅主编,清华大学出版社,2024年

3.《数据结构(C语言版)》,李冬梅主编,人民邮电出版社,2024年

4.《数据结构教程》第7版,李春葆主编  清华大学出版社,2026年

5.《数据结构教程第6版学习指导》,李春葆主编,清华大学出版社,2022年

6.《数据结构教程第6版上机实验指导》,李春葆主编,清华大学出版社,2022年



课程评价

教学资源
课程章节 | 文件类型   | 修改时间 | 大小 | 备注
1.1 基本概念
附件
.${file.extension}
2024-07-17 --
 
文档
.pptx
2024-07-17 458.80KB
 
视频
.mp4
2026-08-04 26.08MB
1.2 抽象数据类型
文档
.pptx
2024-07-17 398.35KB
 
附件
.${file.extension}
2024-07-17 --
1.3 算法效率的度量
文档
.ppt
2024-07-17 620.50KB
 
附件
.${file.extension}
2024-07-17 --
 
作业
.work
2024-07-17 --
2.1 线性表概念及顺序表
附件
.${file.extension}
2024-07-17 --
 
文档
.pptx
2024-07-17 412.82KB
2.2 顺序表示例及链表
文档
.pptx
2024-07-17 336.76KB
2.3 链表及示例
文档
.ppt
2024-07-17 565.50KB
 
视频
.mp4
2026-08-05 18.00MB
 
视频
.mp4
2026-08-05 101.06MB
 
视频
.mp4
2026-08-05 38.25MB
3.1 栈
附件
.${file.extension}
2024-07-17 --
 
文档
.ppt
2024-07-17 1022.00KB
3.2 队列
文档
.ppt
2024-07-17 1.08MB
4.1 字符串存储结构、模式匹配算法
附件
.${file.extension}
2024-07-17 --
 
文档
.ppt
2024-07-17 1.06MB
 
视频
.mp4
2026-08-05 43.85MB
 
视频
.mp4
2026-08-05 30.59MB
5.1 动态数组、压缩存储
附件
.${file.extension}
2024-07-17 --
 
文档
.ppt
2024-07-17 896.50KB
6.1 递归算法执行、设计过程
附件
.${file.extension}
2024-07-17 --
 
文档
.ppt
2024-07-17 3.54MB
 
视频
.mp4
2026-08-05 65.31MB
 
视频
.mp4
2026-08-05 40.06MB
7.1 基本概念、性质、遍历
附件
.${file.extension}
2024-07-17 --
 
文档
.pptx
2024-07-17 915.00KB
 
视频
.mp4
2026-08-05 56.69MB
 
视频
.mp4
2026-08-05 32.41MB
7.2 二叉树遍历应用
文档
.pptx
2024-07-17 1.24MB
 
视频
.mp4
2026-08-05 45.50MB
 
视频
.mp4
2026-08-05 28.50MB
7.3 huffman树、树与二叉树的转换
文档
.pptx
2024-07-17 1.24MB
 
视频
.mp4
2024-07-17 24.33MB
 
视频
.mp4
2026-08-05 48.10MB
 
视频
.mp4
2026-08-05 75.22MB
8.1 基本概念、存储结构
附件
.${file.extension}
2024-07-17 --
 
附件
.${file.extension}
2024-07-17 --
 
文档
.ppt
2024-07-17 4.46MB
 
视频
.mp4
2024-07-17 14.09MB
 
视频
.mp4
2024-07-17 14.56MB
 
视频
.mp4
2024-07-17 24.27MB
 
视频
.mp4
2024-07-17 24.95MB
 
视频
.mp4
2026-08-05 50.87MB
8.2 图操作的实现
视频
.mp4
2022-11-22 26.82MB
 
视频
.mp4
2022-11-22 23.27MB
 
视频
.mp4
2022-11-22 18.28MB
 
视频
.mp4
2022-11-22 11.35MB
8.3 图的遍历
文档
.ppt
2022-11-29 4.46MB
 
视频
.mp4
2022-11-29 20.80MB
 
视频
.mp4
2022-11-29 26.40MB
 
视频
.mp4
2026-08-05 61.44MB
8.4 图的应用
文档
.ppt
2022-11-29 4.46MB
 
视频
.mp4
2022-11-29 25.64MB
 
视频
.mp4
2022-11-29 20.61MB
 
视频
.mp4
2022-11-29 21.56MB
 
视频
.mp4
2026-08-05 82.74MB
9.1 选择排序、插入排序
文档
.ppt
2022-12-06 4.76MB
 
视频
.mp4
2022-12-06 10.02MB
 
视频
.mp4
2022-12-06 19.37MB
 
视频
.mp4
2022-12-06 14.73MB
 
视频
.mp4
2022-12-06 23.83MB
 
视频
.mp4
2022-12-06 17.20MB
 
视频
.mp4
2026-08-05 75.66MB
 
视频
.mp4
2026-08-05 110.36MB
9.2 交换排序、归并、基数排序
文档
.ppt
2024-07-16 4.76MB
 
视频
.mp4
2024-07-16 16.86MB
 
视频
.mp4
2024-07-16 26.93MB
 
视频
.mp4
2024-07-16 30.34MB
 
视频
.mp4
2024-07-16 20.80MB
 
视频
.mp4
2024-07-16 11.75MB
 
视频
.mp4
2026-08-05 76.51MB
10.1 静态查找、动态查找
附件
.${file.extension}
2024-07-17 --
 
文档
.ppt
2024-07-17 1.97MB
 
视频
.mp4
2024-07-17 20.57MB
 
视频
.mp4
2024-07-17 25.37MB
 
视频
.mp4
2024-07-17 13.12MB
 
视频
.mp4
2024-07-17 19.52MB
 
视频
.mp4
2024-07-17 18.37MB
10.2 哈希查找
文档
.ppt
2022-12-20 1.97MB
 
视频
.mp4
2022-12-20 20.56MB
 
视频
.mp4
2022-12-20 24.55MB
提示框
提示框
确定要报名此课程吗?
确定取消

京ICP备10040544号-2

京公网安备 11010802021885号