数据结构
数据结构
2万+ 人选课
更新日期:2026/04/06
开课时间2026/01/21 - 2026/07/20
课程周期26 周
开课状态开课中
每周学时-
课程简介
数据结构是研究数据的逻辑结构、存储结构以及算法的科学。数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。数据结构 = 程序+ 算法。算法 = 对数据结构的操作,是解决问题的方法和步骤。数据结构是研究计算机科学和工程的基础,处于软件中核心的地位。许多大型系统的构造经验表明,系统实现的困难程度和系统构造的质量都严重的依赖于是否选择了最优的数据结构。选择了数据结构,算法也随之确定。《数据结构》课程修炼的是内功,并不能直接立竿见影的可以解决现实问题,但是有了这门内功会在其他方面的学习中对你大有益处。现在,让我们一起开启《数据结构》课程的学习之旅吧。
课程大纲

在线教程

章节简介教学计划
绪论
登录后可预览视频
导读
刘晓文
数据结构及其讨论范畴
刘晓文
基本概念和术语
刘晓文
抽象数据类型的表示和实现
刘晓文
算法及其设计要求
刘晓文
算法效率的度量
刘晓文
线性表
导读
张学平
线性表的概述
张学平
顺序表的定义
张学平
顺序表的插入和删除
张学平
单链表的定义
张学平
单链表中获取某个元素
张学平
单链表的插入和删除
张学平
单链表的建立
张学平
两个单链表的合并
张学平
循环链表
张学平
双向链表
张学平
一元多项式的表示和相加
张学平
线性表总结
张学平
栈与队列
导读
李亚岗
栈的定义与实现
李亚岗
栈的引用举例—数值转换
李亚岗
栈的引用举例—表达式求值
李亚岗
队列的定义
李亚岗
链队列的表示与实现
李亚岗
循环队列的表示与实现
李亚岗
导读
蔡嘉婧
串的定义
蔡嘉婧
串的定长顺序存储表示
蔡嘉婧
堆分配和块链存储表示
蔡嘉婧
模式匹配简单算法
蔡嘉婧
模式匹配KMP算法
蔡嘉婧
数组与广义表
导读
唐国纯
数组的定义
唐国纯
数组顺序表示和实现
唐国纯
矩阵的压缩存储
唐国纯
稀疏矩阵的定义与三元顺序表
唐国纯
行逻辑链接的顺序表
苟和平
十字链表
苟和平
广义表的定义及存储结构
苟和平
广义表的递归算法
展金梅
导读
吴淑雷
树的定义与表示
吴淑雷
树的基本术语
吴淑雷
二叉树的概念与性质
吴淑雷
二叉树的存储结构
吴淑雷
二叉树的遍历
吴淑雷
二叉树的遍历方法
吴淑雷
二叉树遍历的基本应用
吴淑雷
二叉树中序非递归的遍历算法
吴淑雷
线索化二叉树的表示
吴淑雷
中序线索链表的中序遍历
吴淑雷
中序线索化二叉树
吴淑雷
树的存储结构
吴淑雷
树、森林与二叉树的转换
吴淑雷
树和森林的遍历
吴淑雷
赫夫曼树
吴淑雷
赫夫曼编码
吴淑雷
导读
张广路
图的定义
张广路
图基本术语
张广路
图的邻接矩阵表示法
张广路
邻接矩阵构建图
张广路
图的邻接表存储
张广路
邻接表构建图
张广路
图的深度优先遍历
张广路
图的广度优先遍历
张广路
非联通图遍历
张广路
生成树与最小生成树
张广路
Prim思想与分析
张广路
Prim设计与实现
张广路
Kruskal算法思想与分析
张广路
Kruskal算法设计与实现
张广路
最短路径和Dijkstra算法
张广路
Dijkstra算法设计与实现
张广路
Floyd算法思想与步骤
张广路
Floyd算法设计与实现
张广路
拓扑排序
张广路
查找
导读
龙海侠
查找的基本概念
龙海侠
顺序表
龙海侠
有序表-折半查找
龙海侠
索引顺序表
龙海侠
二叉排序树(上)
龙海侠
二叉排序树(下)
龙海侠
平衡二叉树
龙海侠
哈希表(一)
龙海侠
哈希表(二)
龙海侠
哈希表(三)
龙海侠
哈希表(四)
龙海侠
排序
导读
龙海侠
排序的相关概念
龙海侠
直接插入排序
龙海侠
折半插入排序
龙海侠
表插入排序
龙海侠
希尔排序
龙海侠
起泡排序
龙海侠
快速排序
龙海侠
简单选择排序
龙海侠
树形选择排序
龙海侠
堆排序
龙海侠
归并排序
龙海侠
基数排序
龙海侠
内部排序方法的比较排序
龙海侠
  • 第一章绪论

    本章为绪论部分,全面介绍本门课程结构。

  • 1.1导读

    本节为第一章导读。

  • 1.2数据结构及其讨论范畴

    本节首先介绍了计算机求解现实问题的一般步骤,介绍了“算法+数据结构=程序设计”这一著名公式;
    之后介绍了什么是数值数据和非数值数据,以及相应的数值计算问题和非数值计算问题;
    在此基础上,本节介绍了数据结构及其讨论的范畴,指出数据结构是一门讨论“描述现实世界实体的数学模型(非数值计算)及其上的操作在计算机中如何表示和实现”的课程。

  • 1.3基本概念和术语

    本节首先介绍数据结构相关的一些基本概念和术语,包括数据、数据元素和数据项等;之后本节重点介绍了数据结构的定义及数据结构的类型;最后,本节还介绍了什么是数据的逻辑结构和存储结构?以及逻辑结构的类型和存储结构的几种典型表示方法。

  • 1.4抽象数据类型的表示和实现

    本节重点讨论了抽象数据类型的概念以及抽象数据类型的表示和实现方法。结合一个抽象数据类型的实例——复数抽象数据类型,详细阐述了抽象数据类型的表示和实现方法。

  • 1.5算法及其设计要求

    本节首先介绍了算法的概念及常见的描述方法;之后介绍了算法必须满足的五个重要特性:有穷性、确定性、可行性和输入、输出;最后还介绍了算法设计的基本原则和要求。

  • 1.6算法效率的度量

    本节重点讨论了算法效率的衡量方法;分析了和算法执行时间相关的因素,介绍了时间复杂度和空间复杂度的概念;结合具体实例讨论了时间复杂度的计算方法。

  • 第二章线性表

    线性结构是最简单且最常用的数据结构。而线性表是一种典型的线性结构,
    在程序设计设计中广泛使用。
    本章将从线性表的逻辑结构、存储结构及运算三个方面来学习线性表。主要内容如下:
    (1)线性表的逻辑结构,即数据元素之间存在着线性关系;
    (2)线性表的存储结构:顺序存储结构和链式存储结构;
    (3)线性表的两种存储结构的基本算法:建立、查找、插入、删除等。

  • 2.1导读

    本节为线性表的导读

  • 2.2线性表的概述

    了解线性表的有关概念及研究内容,即线性表的逻辑结构、存储结构及运算。

  • 2.3顺序表的定义

    学习顺序表的定义,顺序表的存储结构如何反映数据元素之间的逻辑关系,数据元素地址的计算等。

  • 2.4顺序表的插入和删除

    本节介绍顺序表的插入和删除算法及算法时间复杂度分析。

  • 2.5单链表的定义

    单链表是一种相对简单的线性表的链式存储结构,本节主要介绍单链表的定义及其存储结构。

  • 2.6单链表中获取某个元素

    本节介绍如何在单链表中获取某个元素的算法及时间复杂度分析。

  • 2.7单链表的插入和删除

    本节介绍单链表的插入和删除算法及算法时间复杂度分析。

  • 2.8单链表的建立

    本节介绍单链表建立的两种方法:头插入法建立带头结点的单链表、尾插入法建立带头结点的单链表。

  • 2.9两个单链表的合并

    本节介绍如何将两个“数据元素按值递增有序排列”的线性表归并为新的链表具有同样的性质的算法。

  • 2.10循环链表

    本节介绍如何在单链表的基础上构造循环链表,指向尾结点指针的循环链表的特点。

  • 2.11双向链表

    本节介绍为什么要构造双向链表,栓想链表的特点及插入、删除的实现等。

  • 2.12一元多项式的表示和相加

    介绍一元多项式的顺序存储及链式存储,一元多项式加法的实现算法。

  • 2.13线性表总结

    总结线性表讲述的内容,主要从线性表的逻辑结构、存储结构及运算进行总结,比较顺序表和链表的优缺点及选择。

  • 第三章栈与队列

    本章主要介绍栈与队列的相关内容

  • 3.1导读

    介绍了栈和队列的知识内容、重难点、教学规划及学习方法

  • 3.2栈的定义与实现

    介绍栈的定义、存储、运算规则以及相关操作。

  • 3.3栈的引用举例—数值转换

    介绍栈在实现计算过程的重要应用-------数值转换

  • 3.4栈的引用举例—表达式求值

    介绍栈在语言编译系统中的重要应用---------表达式求值

  • 3.5队列的定义

    介绍队列的定义、运算规则以及相关操作

  • 3.6链队列的表示与实现

    介绍链队列的概念、链队列的表示以及基本的出队、入队算法

  • 3.7循环队列的表示与实现

    介绍循环队列定义、队满与队空的判别以及基本操作算法

  • 第四章

    在非数值处理、事务处理等问题常涉及到一系列的字符操作。计算机的硬件结构主要是反映数值计算的要求,因此,字符串的处理比具体数值处理复杂。本章中我们将来讨论串的定义、存储结构及其模式匹配算法。

  • 4.1导读

    本节为串的导读

  • 4.2串的定义

    我们目前只知道字符与串有关,它们之间具体的联系我们通过对本节当中所将要讲解的串的基本概念及抽象数据类型定义来理解。

  • 4.3串的定长顺序存储表示

    串是一种特殊的线性表,其存储表示和线性表类似,但又不完全相同。串的存储方式取决于将要对串所进行的操作,首先我们在这节当中来讨论串的定长顺序存储表示的C语言实现方式和在这种存储表示方式下的连接算法及子串删除算法。

  • 4.4堆分配和块链存储表示

    本节当中我们来学习串的对分配存储表示和块链存储表示。首先分别介绍这两种存储表示方式的基本概念和C语言实现,着重讨论堆分配存储表示的连接算法和求子串算法。

  • 4.5模式匹配简单算法

    模式匹配是一个较为复杂的串操作过程,迄今为止,人们对串的模式匹配提出了许多思想和效率各不相同的计算机算法。本节课我们先来讨论模式匹配简单算法的C语言实现,并通过算法分析来理解其模式匹配过程,最终通过例题讲解来巩固对模式匹配简单算法的理解。

  • 4.6模式匹配KMP算法

    本节要学习一种高效率的模式匹配算法,KMP算法。首先我们来讨论他与模式匹配简单算法在匹配过程当中的区别,再接着来看KMP算法当中关键的next[j]函数的定义,以便推导出来模式串指针的指向。

  • 第五章数组与广义表

    本章主要介绍数组和广义表相关内容

  • 5.1导读

    本章主要内容主要包括三个部分,一是理解数组的定义,数组的顺序表示和实现;二是理解和掌握特殊矩阵和稀疏矩阵,尤其稀疏矩阵的三元组表压缩存储方法和其上的矩阵转置运算的算法;三是熟悉广义表的定义、存储结构和深度。

  • 5.2数组的定义

    本节学习的内容主要分为三个部分,第一个部分,理解数组与线性表关系。第二个部分,掌握二维数组的抽象类型定义。第三个部分,理解n维数组的抽象类型定义。

  • 5.3数组顺序表示和实现

    本节学习的内容主要分为三个部分,第一个部分,理解数组的顺序表示。第二个部分,掌握数组元素存储地址的计算。第三个部分,掌握数组的实现。

  • 5.4矩阵的压缩存储

    本节学习的内容主要分为三个部分,第一个部分,理解矩阵压缩存储的概念。第二个部分,掌握对称矩阵与三角矩阵。第三个部分,理解对角矩阵。

  • 5.5稀疏矩阵的定义与三元顺序表

    本节学习的内容主要分为三个部分,第一个部分,理解稀疏矩阵的定义。第二个部分,掌握三元组顺序表。第三个部分,应用三元组表表示的稀疏矩阵转置。

  • 5.6行逻辑链接的顺序表

    本节主要讲述了三元组顺序表的特点:非零元在表中按行序有序存储,便于进行依行顺序处理的矩阵运算,若需要按行号存取某一行的非零元,则需从头开始查找。为了便于随机存取任意一行的非零元,则需知道每一行的第一个非零元在三元组表中的位置,这种“带行链接信息”的三元组表为行逻辑链接的顺序表。即行逻辑链接的顺序表是三元组顺序表的改进,在三元组顺序表的存储结构中加入“行链接”信息。

  • 5.7十字链表

    本节学习的内容主要是:由于稀疏矩阵的非零元的个数和位置在某些矩阵运算的过程中会发生很大的变化,如矩阵的加法、减法等运算,为了避免非零元的插入和删除过程中的元素移动,采用链式存储结构表示三元组的线性表更适当。

  • 5.8广义表的定义及存储结构

    本节学习的内容主要是:广义表,又称其为列表(Lists),是线性表的一种推广。即广义表中放松对表元素的原子限制,容许它们具有其自身结构。它被广泛的应用于人工智能等领域的表处理语言LISP语言。在LISP语言,把广义表作为基本的数据结构,就连程序也表示为一系列的广义表。

  • 5.9广义表的递归算法

    这一节将介绍以下三部分内容,一递归函数,二分治法及其设计思想,三求广义表深度的递归算法。要求理解递归函数的定义,掌握基于分治法的递归算法设计思想,在上述两个知识点学习的基础上,进一步学习求广义表深度的递归算法。

  • 第六章

    本章为关于树的相关内容的介绍

  • 6.1导读

    介绍了树的知识内容、重难点、教学规划及学习方法。

  • 6.2树的定义与表示

    本节介绍树的定义和表示

  • 6.3树的基本术语

    本节介绍树的一些基本术语

  • 6.4二叉树的概念与性质

    本节介绍二叉树的概念与性质

  • 6.5二叉树的存储结构

    本节介绍二叉树的存储结构

  • 6.6二叉树的遍历

    本节介绍二叉树的遍历

  • 6.7二叉树的遍历方法

    本节介绍二叉树的遍历方法

  • 6.8二叉树遍历的基本应用

    本节介绍二叉树遍历的基本应用

  • 6.9二叉树中序非递归的遍历算法

    本节介绍二叉树中序非递归的遍历算法

  • 6.10线索化二叉树的表示

    本节介绍线索化二叉树的表示

  • 6.11中序线索链表的中序遍历

    本节介绍中序线索链表的中序遍历

  • 6.12中序线索化二叉树

    本节介绍中序线索化二叉树

  • 6.13树的存储结构

    本节介绍树的存储结构

  • 6.14树、森林与二叉树的转换

    本节介绍树、森林与二叉树的转换

  • 6.15树和森林的遍历

    本节介绍树和森林的遍历

  • 6.16赫夫曼树

    本节介绍赫夫曼树

  • 6.17赫夫曼编码

    本节介绍赫夫曼编码

  • 第七章

    本章为关于图的内容介绍

  • 7.1导读

    介绍了图的知识内容、重难点、教学规划及学习方法。

  • 7.2图的定义

    介绍图的定义、类型、运算规则以及相关操作。

  • 7.3图基本术语

    介绍图的基本术语。

  • 7.4图的邻接矩阵表示法

    介绍图的存储、邻接矩阵存储法。

  • 7.5邻接矩阵构建图

    介绍图的邻接矩阵数据类型定义、图的创建算法及实现。

  • 7.6图的邻接表存储

    介绍图的邻接表存储法、有向图、无向图和网的存储结构及其特点。

  • 7.7邻接表构建图

    介绍图的邻接矩表数据类型定义、图的创建算法及实现。

  • 7.8图的深度优先遍历

    介绍图的遍历概念,深度优先遍历算法思想、步骤演示、算法设计与实现。

  • 7.9图的广度优先遍历

    介绍图的广度优先遍历算法思想、算法示例演示、算法设计与实现。

  • 7.10非联通图遍历

    介绍非连通图的遍历算法思想、算法示例演示、算法设计与实现。

  • 7.11生成树与最小生成树

    介绍图的生成树的概念、生成树产生的算法、最小生成树概念及实现算法。

  • 7.12Prim思想与分析

    介绍Prim算法的思想、步骤、算法示例演示。

  • 7.13Prim设计与实现

    介绍Prim算法设计、实现、复杂度分析。

  • 7.14Kruskal算法思想与分析

    介绍Kruskal算法的思想、步骤、算法示例演示。

  • 7.15Kruskal算法设计与实现

    介绍Kruskal算法设计、实现、复杂度分析。

  • 7.16最短路径和Dijkstra算法

    介绍最短路径的概念、单源最短路径的概念、Dijkstr算法思想、步骤和示例演示。

  • 7.17Dijkstra算法设计与实现

    介绍Dijkstra算法设计、实现、复杂度分析。

  • 7.18Floyd算法思想与步骤

    介绍Floyd算法思想、步骤和示例演示。

  • 7.19Floyd算法设计与实现

    介绍Floyd算法设计、实现、复杂度分析。

  • 7.20拓扑排序

    介绍拓扑排序的概念、AOV网的概念、拓扑排序步骤、示例演示、算法设计和算法实现。

  • 第八章查找

    本章主要介绍数据结构中的数据运算:查找运算。本章将分为四大块进行讲解,首先是查找运算中涉及到的基本概念,其次讲解静态查找表,然后讲解动态查找表,最后讲解哈希表。
    静态查找表中涉及顺序查找表、折半查找表、索引顺序表。动态查找表中主要涉及二叉排序树和平衡二叉树。哈希表中主要讲解哈希表的定义,哈希函数的构造方法,处理冲突的方法和哈希表的查找。

  • 8.1导读

    本节为查找的导读

  • 8.2查找的基本概念

    本节介绍查找表、静态查找表、动态查找表、主关键字、次关键字、查找、查找成功、查找不成功、平均查找长度、静态查找表的抽象数据类型、动态查找表的抽象数据类型、哈希表的定义。其中平均查找长度、静态查找表、动态查找表、哈希表的定义是重点内容。

  • 8.3顺序表

    本节主要围绕顺序查找进行讲解,主要介绍顺序查找的存储结构、查找思想、算法以及实现、最后进行顺序查找的性能分析。理解顺序查找的思想,掌握其算法,并能用C语言实现。

  • 8.4有序表-折半查找

    本节主要围绕有序表的折半查找进行讲解,主要介绍折半查找的前提要求、查找思想、算法以及实现、最后进行折半查找的性能分析。理解折半查找的思想,掌握其算法,并能用C语言实现。

  • 8.5索引顺序表

    本节主要围绕索引顺序表的查找进行讲解,主要介绍构建索引顺序表的前提要求、索引顺序表的查找思想以及查找算法的性能分析。

  • 8.6二叉排序树(上)

    本节主要介绍二叉排序树的定义、存储结构、查找思想、查找算法以及算法分析、插入算法以及算法分析、删除算法以及算法分析。重点理解二叉排序树的定义,查找、插入、删除都是围绕二叉排序树的定义展开的。

  • 8.7二叉排序树(下)

    本节主要介绍二叉排序树的定义、存储结构、查找思想、查找算法以及算法分析、插入算法以及算法分析、删除算法以及算法分析。重点理解二叉排序树的定义,查找、插入、删除都是围绕二叉排序树的定义展开的。

  • 8.8平衡二叉树

    本节主要介绍平衡二叉树的定义以及平衡旋转的四种方法。

  • 8.9哈希表(一)

    本节主要介绍哈希表的定义,哈希函数的构造方法,处理冲突的方法,哈希表的查找及其分析。其中处理冲突的开发地址法和链地址法、哈希表的查找以及性能分析是本节的重点内容。

  • 8.10哈希表(二)

    本节主要介绍哈希表的定义,哈希函数的构造方法,处理冲突的方法,哈希表的查找及其分析。其中处理冲突的开发地址法和链地址法、哈希表的查找以及性能分析是本节的重点内容。

  • 8.11哈希表(三)

    本节主要介绍哈希表的定义,哈希函数的构造方法,处理冲突的方法,哈希表的查找及其分析。其中处理冲突的开发地址法和链地址法、哈希表的查找以及性能分析是本节的重点内容。

  • 8.12哈希表(四)

    本节主要介绍哈希表的定义,哈希函数的构造方法,处理冲突的方法,哈希表的查找及其分析。其中处理冲突的开发地址法和链地址法、哈希表的查找以及性能分析是本节的重点内容。

  • 第九章排序

    本章主要围绕数据结构中的数据运算:排序运算展开讲解。本章涉及的内容包括排序的相关概念;插入类排序;快速排序;选择类排序;归并排序;基数排序。插入类排序里面包含直接插入排序;折半插入排序;表插入排序;希尔排序。快速排序包含起泡排序;快速排序;选择排序包含简单选择排序;树形选择排序和堆排序。基数排序包含多关键字排序和链式基数排序。

  • 9.1导读

    本节为排序的导读

  • 9.2排序的相关概念

    本节主要介绍一下概念:排序、内部排序、外部排序、内部排序的分类、排序方法的稳定性、排序方法的不稳定性、排序的存储结构、排序算法的效率分析。

  • 9.3直接插入排序

    本节介绍直接插入排序的算法思想、算法实现以及分析算法的性能。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.4折半插入排序

    本节介绍折半插入排序的算法思想、算法实现以及分析算法的性能。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.5表插入排序

    本节介绍表插入排序的算法思想、算法的存储结构。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.6希尔排序

    本节介绍希尔排序的算法思想、算法实现以及算法性能。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.7起泡排序

    本节介绍起泡排序的算法思想、算法实现以及算法性能。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.8快速排序

    本节介绍快速排序的算法思想、算法实现以及算法性能。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.9简单选择排序

    本节介绍简单选择排序的算法思想、算法实现以及算法性能。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.10树形选择排序

    本节介绍树形选择排序的算法思想。在讲解过程中,给出算法演示进一步理解算法思想。

  • 9.11堆排序

    本节介绍堆的定义、堆排序的基本思想、如何将无序序列建成堆、堆的重新调整,已经堆排序算法的性能分析。

  • 9.12归并排序

    本节主要介绍归并排序的算法思想已经算法性能分析,结合实例进行算法演示,进一步理解算法思想。

  • 9.13基数排序

    本节主要介绍基数排序算法思想,两种基数排序算法:多关键字排序和链式基数排序,以及基数排序的算法性能分析。

  • 9.14内部排序方法的比较排序

    本节从各类排序算法的时间复杂度、空间复杂度、算法的稳定性方面进行比较。

  • 开始学习
  • 第一章  作业测试
    第一章 绪论

    1.1 导读

    1.2 数据结构及其讨论范畴

    1.3 基本概念和术语

    1.4 抽象数据类型的表示和实现

    1.5 算法及其设计要求

    1.6 算法效率的度量

    视频数6
  • 第二章  作业测试
    第二章 线性表

    2.1 导读

    2.2 线性表的概述

    2.3 顺序表的定义

    2.4 顺序表的插入和删除

    2.5 单链表的定义

    2.6 单链表中获取某个元素

    2.7 单链表的插入和删除

    2.8 单链表的建立

    2.9 两个单链表的合并

    2.10 循环链表

    2.11 双向链表

    2.12 一元多项式的表示和相加

    2.13 线性表总结

    视频数13
  • 第三章  作业测试
    第三章 栈与队列

    3.1 导读

    3.2 栈的定义与实现

    3.3 栈的引用举例—数值转换

    3.4 栈的引用举例—表达式求值

    3.5 队列的定义

    3.6 链队列的表示与实现

    3.7 循环队列的表示与实现

    视频数7
  • 第四章  作业测试
    第四章

    4.1 导读

    4.2 串的定义

    4.3 串的定长顺序存储表示

    4.4 堆分配和块链存储表示

    4.5 模式匹配简单算法

    4.6 模式匹配KMP算法

    视频数6
  • 第五章  作业测试
    第五章 数组与广义表

    5.1 导读

    5.2 数组的定义

    5.3 数组顺序表示和实现

    5.4 矩阵的压缩存储

    5.5 稀疏矩阵的定义与三元顺序表

    5.6 行逻辑链接的顺序表

    5.7 十字链表

    5.8 广义表的定义及存储结构

    5.9 广义表的递归算法

    视频数9
  • 第六章  作业测试
    第六章

    6.1 导读

    6.2 树的定义与表示

    6.3 树的基本术语

    6.4 二叉树的概念与性质

    6.5 二叉树的存储结构

    6.6 二叉树的遍历

    6.7 二叉树的遍历方法

    6.8 二叉树遍历的基本应用

    6.9 二叉树中序非递归的遍历算法

    6.10 线索化二叉树的表示

    6.11 中序线索链表的中序遍历

    6.12 中序线索化二叉树

    6.13 树的存储结构

    6.14 树、森林与二叉树的转换

    6.15 树和森林的遍历

    6.16 赫夫曼树

    6.17 赫夫曼编码

    视频数17
  • 第七章  作业测试
    第七章

    7.1 导读

    7.2 图的定义

    7.3 图基本术语

    7.4 图的邻接矩阵表示法

    7.5 邻接矩阵构建图

    7.6 图的邻接表存储

    7.7 邻接表构建图

    7.8 图的深度优先遍历

    7.9 图的广度优先遍历

    7.10 非联通图遍历

    7.11 生成树与最小生成树

    7.12 Prim思想与分析

    7.13 Prim设计与实现

    7.14 Kruskal算法思想与分析

    7.15 Kruskal算法设计与实现

    7.16 最短路径和Dijkstra算法

    7.17 Dijkstra算法设计与实现

    7.18 Floyd算法思想与步骤

    7.19 Floyd算法设计与实现

    7.20 拓扑排序

    视频数20
  • 第八章  作业测试
    第八章 查找

    8.1 导读

    8.2 查找的基本概念

    8.3 顺序表

    8.4 有序表-折半查找

    8.5 索引顺序表

    8.6 二叉排序树(上)

    8.7 二叉排序树(下)

    8.8 平衡二叉树

    8.9 哈希表(一)

    8.10 哈希表(二)

    8.11 哈希表(三)

    8.12 哈希表(四)

    视频数12
  • 第九章  作业测试
    第九章 排序

    9.1 导读

    9.2 排序的相关概念

    9.3 直接插入排序

    9.4 折半插入排序

    9.5 表插入排序

    9.6 希尔排序

    9.7 起泡排序

    9.8 快速排序

    9.9 简单选择排序

    9.10 树形选择排序

    9.11 堆排序

    9.12 归并排序

    9.13 基数排序

    9.14 内部排序方法的比较排序

    视频数14
  • 期末考试
App 下载
关注我们