数据结构与算法(天津理工大学)
数据结构与算法(天津理工大学)
1000+ 人选课
更新日期:2024/11/21
开课平台智慧树
开课高校天津理工大学
开课教师戴敏董晨董玉涛林胜刘冰佟丽杨延红
学科专业工学计算机类
开课时间2024/07/21 - 2025/01/20
课程周期27 周
开课状态开课中
每周学时-
课程简介
数据结构与算法是计算机学科及相关专业的一门重要专业基础课,“程序=数据结构+算法”,如果把程序设计比作做菜,那么数据结构就好比食材(菜),算法就好比厨艺(做菜的技巧)。本课程由国家一流建设专业负责人、天津市教学名师和天津市教学创新团队主要成员担任主讲。课程以典型数据结构为起点,通过分析数据及其关系在计算机中的表示、处理和实现方法,引领我们探究抽象数据关系的秘密;通过算法分析与设计通用方法的讲解与训练,带领我们体验经典算法之美。它不是一门语言,而是一种思维方式,为我们开启计算思维的大门,提高数据抽象能力和复杂程序设计的能力。
课程大纲

在线教程

章节简介教学计划
课程概述
登录后可预览视频
课程概述
戴敏
绪论
数据结构研究的内容
戴敏
基本概念与术语
戴敏
算法与算法分析
算法的定义与描述
戴敏
算法的分析
戴敏
线性表
线性表的逻辑结构
戴敏
线性表的顺序存储结构及实现
戴敏
线性表的链式存储结构及实现
单链表
戴敏
循环链表、双向链表
戴敏
线性表总结
戴敏
栈和队列
栈的定义与逻辑特点
董晨
顺序栈
董晨
链式栈
董晨
栈的应用举例
董晨
队列
队列的定义与逻辑特点
董晨
循环队列
董晨
链式队列
董晨
队列的应用举例
董晨
数组和矩阵的压缩存储
数组的定义和实现
董玉涛
矩阵的压缩存储
董玉涛
递归
递归的定义
董玉涛
递归的工作原理和实现形式
董玉涛
树和二叉树
树的定义与基本概念
树的基本概念
戴敏
树的存储结构
戴敏
二叉树
二叉树及其存储
戴敏
二叉树的遍历
戴敏
线索二叉树
戴敏
树、森林与二叉树转换
戴敏
Huffman树及其应用
Huffman树
戴敏
Huffman树应用举例
戴敏
图的定义与基本术语
董晨
图的存储结构
邻接矩阵表示法
董晨
邻接表表示法
董晨
图的遍历
图的深度优先遍历
董晨
图的广度优先遍历
董晨
图的生成树与最小生成树
生成树相关概念
董晨
Prim算法
董晨
Kruskal算法
董晨
拓扑排序
董玉涛
最短路径
最短路径问题和Dijkstra算法
董玉涛
Floyd算法
董玉涛
查找
查找的基本概念
戴敏
线性表的查找
戴敏
树表的查找
二叉排序树
戴敏
平衡的二叉排序树
戴敏
B_树的插入
戴敏
B_树的删除
戴敏
散列表的查找
散列函数
戴敏
处理冲突策略
戴敏
内部排序
排序的基本概念
林胜
插入排序
直接插入排序
林胜
希尔排序
林胜
交换排序
冒泡排序
林胜
快速排序
林胜
选择排序
简单选择排序
林胜
堆排序
林胜
归并排序
林胜
基数排序
林胜
  • 绪章课程概述

    课程目标、性质、学习方法等

  • 0.1课程概述

    课程目标、性质、学习方法等

  • 第一章绪论

    介绍数据结构的研究内容及相关术语,从时间和空间角度对算法进行分析的方法。

  • 1.1 数据结构研究的内容

    计算机求解问题的一般过程;数据结构研究什么

  • 1.2基本概念与术语

    理解数据元素、数据的逻辑结构、存储结构

  • 1.3算法与算法分析

    算法的定义、特性及描述方法,算法性能分析方法

  • 第二章线性表

    线性表的定义、逻辑特点;线性表的两种实现方式(顺序的和链式的),及其基本操作的实现算法;线性表的应用。

  • 2.1线性表的逻辑结构

    线性表的定义、逻辑特点、抽象数据类型描述

  • 2.2线性表的顺序存储结构及实现

    线性表的顺序存储结构,顺序表基本操作的实现

  • 2.3线性表的链式存储结构及实现

    线性表的链式存储结构,单链表、循环林彪、双向链表的实现

  • 2.4线性表总结

    线性表表两种不同实现方式优缺点的比较

  • 第三章栈和队列

    栈、队列的定义、逻辑特点;栈、队列的两种实现方式(顺序的和链式的),及出栈、入栈、出队、入队等基本操作的实现算法;栈与队列的应用。

  • 3.1

    栈的定义、逻辑特点;顺序栈、链式栈的实现方式及出栈、入栈基本操作的实现算法;栈的应用。

  • 3.2队列

    队列的定义、逻辑特点;循环队列、链队列的实现方式及出队、入队基本操作的实现算法;队列的应用。

  • 第四章数组和矩阵的压缩存储

    多维数组的结构特点,以及数组的存储表示方法;特殊矩阵和稀疏矩阵的压缩存储。

  • 4.1数组的定义和实现

    多维数组的定义及行优先、列优先存储方式

  • 4.2矩阵的压缩存储

    特殊矩阵与稀疏矩阵的压缩存储

  • 第五章递归

    递归的定义、递归的工作原理;递归算法的实现形式;递归算法的应用举例。

  • 5.1递归的定义

    递归的定义

  • 5.2递归的工作原理和实现形式

    递归的工作原理、实现形式

  • 第六章树和二叉树

    递归的定义、递归的工作原理;递归算法的实现形式;递归算法的应用举例。

  • 6.1树的定义与基本概念

    树的定义、性质,树的存储结构

  • 6.2二叉树

    二叉树的定义、性质和存储;二叉树遍历

  • 6.3线索二叉树

    线索二叉树的定义、存储结构,二叉树的线索化

  • 6.4树、森林与二叉树转换

    树和森林与二叉树的相互转换

  • 6.5Huffman树及其应用

    最优二叉树的定义、构造及其应用

  • 第七章

    图的定义与存储;图的遍历;图的最小生成树;拓扑排序;最短路径问题等。

  • 7.1图的定义与基本术语

    图的定义及相关术语

  • 7.2 图的存储结构

    图的存储与实现

  • 7.3图的遍历

    图的遍历及实现方式

  • 7.4图的生成树与最小生成树

    图的生成树与最小生成树的定义、求最小生成树的方法

  • 7.5拓扑排序

    AOV网络及拓扑排序的定义、拓扑排序算法与性能分析

  • 7.6最短路径

    什么是最短路径问题?如何求解单源最短路径和所有顶点之间的最短路径

  • 第八章查找

    线性表上的查找,如顺序查找、折半查找、分块查找方法;树表的查找,如二叉搜索树、平衡二叉搜索树、B树;散列表的查找。

  • 8.1查找的基本概念

    查找的基本概念、查找性能的评价

  • 8.2线性表的查找

    线性表上的查找,如顺序查找、折半查找、分块查找方法

  • 8.3树表的查找

    线性表上的查找、如顺序查找、折半查找、分块查找方法

  • 8.4散列表的查找

    散列基本概念,散列关键问题:散列函数、处理冲突策略,查找性能分析

  • 第九章内部排序

    插入排序、交换排序、选择排序、归并排序、基数排序五类排序中经典排序算法的具体实现,以及每种排序算法的性能分析。

  • 9.1排序的基本概念

    排序的基本概念、分类、性能评价

  • 9.2 插入排序

    插入排序的基本思想,直接插入排序与希尔排序的实现

  • 9.3交换排序

    交换排序的基本思想,冒泡排序与快速排序的实现

  • 9.4选择排序

    选择排序的基本思想,简单选择排序与堆排序的实现

  • 9.5归并排序

    归并排序基本思想、二路归并排序的实现及性能分析

  • 9.6基数排序

    基数的定义、基数排序及性能评价

  • 开始学习
  • 绪章  作业测试
    绪章课程概述

    0.1 课程概述

    视频数1
  • 第一章  作业测试
    第一章 绪论

    1.1 数据结构研究的内容

    1.2 基本概念与术语

    1.3 算法与算法分析

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

    2.1 线性表的逻辑结构

    2.2 线性表的顺序存储结构及实现

    2.3 线性表的链式存储结构及实现

    2.4 线性表总结

    视频数5
  • 第三章  作业测试
    第三章 栈和队列

    3.1

    3.2 队列

    视频数8
  • 第四章  作业测试
    第四章 数组和矩阵的压缩存储

    4.1 数组的定义和实现

    4.2 矩阵的压缩存储

    视频数2
  • 第五章  作业测试
    第五章 递归

    5.1 递归的定义

    5.2 递归的工作原理和实现形式

    视频数2
  • 第六章  作业测试
    第六章 树和二叉树

    6.1 树的定义与基本概念

    6.2 二叉树

    6.3 线索二叉树

    6.4 树、森林与二叉树转换

    6.5 Huffman树及其应用

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

    7.1 图的定义与基本术语

    7.2 图的存储结构

    7.3 图的遍历

    7.4 图的生成树与最小生成树

    7.5 拓扑排序

    7.6 最短路径

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

    8.1 查找的基本概念

    8.2 线性表的查找

    8.3 树表的查找

    8.4 散列表的查找

    视频数8
  • 第九章  作业测试
    第九章 内部排序

    9.1 排序的基本概念

    9.2 插入排序

    9.3 交换排序

    9.4 选择排序

    9.5 归并排序

    9.6 基数排序

    视频数9
  • 期末考试