图解数据结构
图解数据结构
1000+ 人选课
更新日期:2026/03/17
开课时间2026/03/02 - 2026/07/03
课程周期18 周
开课状态开课中
每周学时-
课程简介

这门课会讲什么?

       数据结构是计算机学科本科教学计划中的骨干基础课程,对学生基本的计算机问题求解能力的培养具有重要意义。

       作为一门必修课程,该课程既是对以往课程的深入和扩展,也是为将来更加深入地学习其他专业课程打下基础。课程中所学的排序问题的算法以及基本的线性表、树、图等数据结构,是计算机学科的基本功。B+树、散列等高级数据结构,也是数据库、操作系统、编译原理、计算机网络等后续课程的基础。

       本课程适合在大学二年级开设,学生应先修程序设计课程,以具备一定的程序设计基础;数据结构的主要逻辑结构是线性表、树、图,因此离散数学是重要基础;在算法效率分析中,需要运用初步概率知识,因此学生应该具备一定的概率基础。

      内容简介:

      本课程的知识体系主要涉及三部分内容:

        (1)数据结构的基本概念(第1章),包括数据的逻辑结构、存储结构、算法及算法的时间复杂度分析。

        (2)三种典型逻辑结构及其应用。包括线性结构(第2、3、4章),具体分为线性表的顺序存储与链式存储,栈与队列,数组与 特殊矩阵等内容;树型结构(第6、7章),主要包括树与二叉树,树的性质,二叉树的存储与遍历等算法;图型结构(第8章),主要包括图的邻接矩阵与邻接表存储结构,图的遍历、最小生成树、最短路径、拓扑排序、关键路径等图算法。

        (3)三类典型算法,包括递归(第5章),包括递归程序的执行过程,递归程序到非递归程序的转换等内容;检索(第9章),包括线性表的检索、二叉排序树、Huffman树、B树、散列等检索结构与算法;排序(第10章),包括选择排序、插入排序、交换排序、归并排序与基数排序等算法思想与实现等内容。

      教学目标:

      知识目标:掌握数据结构的基本概念,理解算法与算法分析的基本方法,掌握线性结构、树型结构和图型结构的实现方法,理解栈、队列等数据结构的应用场合并能正确应用;熟练掌握递归、检索和排序算法思想并能应用该解法进行问题求解。

      能力目标:能够根据所求解问题的性质选择合理的数据结构并设计合理的算法进行问题求解,能够应用数据结构知识创新性地解决实际问题。

      素质目标:坚持知识、能力、素质有机融合,关注信息技术发展的新技术与新趋势,提升课程的高阶性,突出课程的创新性,增加课程的挑战度,发展面向未来从事计算机科学技术工作所需要的自主学习与计算思维能力,培养团队协作能力与科学精神。


你将收获什么?

通过本课程的学习,学生将:

1)掌握数据结构的基本概念,理解算法与算法分析的基本方法;

2)掌握线性结构、树型结构和图型结构的实现方法;

3)理解栈、队列等数据结构的应用场合并能正确应用;

4)熟练掌握递归、检索和排序算法思想并能应用该解法进行问题求解。

通过对上述内容的学习,使学生能够根据所求解问题的性质选择合理的数据结构并对时间和空间复杂性进行必要的控制。能够应用数据结构知识解决实际问题,培养学生计算思维能力。通过课内实验,综合性课程设计的实训,提高实践编程能力,并在项目设计过程中培养团队协作精神,从而促进学生素质,能力的全面提高。

适合什么人学习?

       计算机类相关专业,如计算机科学与技术、软件工程、网络工程、物联网工程、数字媒体与技术、信息管理与信息系统、大数据科学与技术、人工智能本科学生,或计算机算法爱好者均可进行学习,由于课程算法采用C程序设计语言描述,要求学习对象具有一定C编程基础。

  

课程大纲

课程章节

  • 绪论
  • 线性表的顺序存储
  • 线性表的链式存储
  • 字符串、数组与特殊矩阵
  • 递归
  • 二叉树
  • 检索
  • 内排序
  • 基础实验
  • 综合实验

绪论

1.1 1. 数据结构的基本概念

1.2 2. 数据结构不同层次的描述

1.3 3. 算法与算法分析

1.4 习题一

1.5 附-教材第1章电子版

线性表的顺序存储

2.1 1. 顺序表

2.2 2. 栈

2.3 3. 队列

2.4 习题二

2.5 附-教材第2章 电子版

线性表的链式存储

3.1 1.链式存储

3.2 2.单链表

3.3 3.带头结点的单链表

3.4 4.循环单链表

3.5 5.双链表

3.6 6.链式栈

3.7 7.链式队列

3.8 习题三

3.9 附-教材第3章电子版

字符串、数组与特殊矩阵

4.1 1.字符串

4.2 2.字符串的模式匹配

4.3 3.数组

4.4 4.特殊矩阵

4.5 5.稀疏矩阵

4.6 习题四

4.7 附件4-教材第4章电子版

递归

5.1 1.递归的基本概念与递归程序设计

5.2 2.递归程序执行过程的分析

5.3 3.递归程序到非递归程序的转换

5.4 4.递归程序应用实例

5.5 习题五

5.6 附件5-教材第5章电子版

6.1 1.树的基本概念

6.2 2.树的存储结构

6.3 3.树的遍历

6.4 4.树的线性表示

6.5 习题六

6.6 附件6-教材第6章电子书

二叉树

7.1 1.二叉树的基本概念与性质

7.2 2.二叉树的存储结构

7.3 3.二叉树的遍历

7.4 4.二叉树其他运算的实现

7.5 5.穿线二叉树

7.6 6.树、森林和二叉树的转换

7.7 习题七

7.8 附件7-教材第7章电子书

8.1 1.图的基本概念

8.2 2.图的基本运算

8.3 3.图的基本存储结构

8.4 4.图的遍历

8.5 5.生成树与最小生成树

8.6 6.最短路径

8.7 7.拓扑排序

8.8 8.关键路径

8.9 习题八

8.10 附件8-第8章电子教材

检索

9.1 1.检索的基本概念

9.2 2.线性表的检索

9.3 3.二叉排序树

9.4 4.丰满树和平衡树

9.5 5.最佳二叉排序树和Huffman树

9.6 6.B-树与B+树

9.7 7.散列表检索

9.8 习题九

9.9 附件9-第9章 检索电子教材

内排序

10.1 1.排序的基本概念

10.2 2.插入排序

10.3 3.选择排序

10.4 4.交换排序

10.5 5.归并排序

10.6 6.基数排序

10.7 习题十

10.8 附件10-第10章 电子教材

基础实验

11.1 实验1 线性表的顺序实现

11.2 实验2 不带头结点的单链表

11.3 实验3 带头结点的单链表

11.4 实验4 栈与字符串

11.5 实验5 递归

11.6 实验6 树

11.7 实验7 二叉树

11.8 实验8 图

11.9 实验9 检索

11.10 实验10 排序

综合实验

12.1 综合课程设计参考选题

App 下载
关注我们