数据结构课程是高等院校计算机专业、软件工程专业等的一门最重要的核心专业基础课,是学习操作系统、编译原理、数据库原理、人工智能、算法设计与分析等课程的基础。
本课程能够使得学生获得线性表、栈和队列、串、数组和广义表、树和二叉树、图、查找、排序和算法等方面的基本概念、基本理论和基本算法设计技能,为学习后继课程奠定必要的基础,并能利用所学知识解决简单的应用问题。
通过本课程的学习,旨在使学生了解各种数据对象的特性,学会数据的组织方法和把现实世界中的问题在计算机内部的表示方法,以培养学生基本的、良好的算法设计能力和程序设计技能;通过各个教学环节逐步培养学生具有抽象思维能力、逻辑推理能力、空间想象能力和自学能力。
(1)了解各种数据对象的特性
(2)学会数据的组织方法和把现实世界中的问题在计算机内部的表示方法
(3)良好的算法设计能力和程序设计技能
(4)抽象思维能力、逻辑推理能力、空间想象能力和自学能力
通过讲授和上机实验,使学生了解《数据结构》的原理和特点。掌握线性表、栈和队列、串、递归、数组和广义表、树和二叉树、图、查找和内部排序等基本数据结构及其相关算法的设计。具备较高水准的采用数据结构方法求解实际问题的能力。
第1章 绪论
第1讲-初识数据结构
第2讲-数据结构基本概念
第3讲-存储结构与抽象数据类型
第4讲-算法及其描述
第5讲-计算时间复杂度举例
【Test】单元测试 - 绪论
第2章 线性表
第1讲-线性表的基本概念
第2讲-线性表的顺序存储结构
第3讲-顺序存储结构算法设计举例
第4讲-单链表的基本算法
第5讲-单链表算法设计举例
第6讲-循环链表
第7讲-双向链表和双向循环链表
【Test】单元测试 - 顺序存储结构
【Test】单元测试 - 链式存储结构
第3章 栈和队列
第1讲-栈的定义和顺序栈
第2讲-链栈
第3讲-栈的应用举例
第4讲-队列的定义和循环队列
第5讲-队列的应用举例
第6讲-链队列
第7讲-递归的概念
第8讲-递归算法设计举例
【Test】单元测试 - 栈和队列
第4章 串
第4章串第1讲-串的概念及存储结构
第4章串第2讲-串的模式匹配概念
第4章串第3讲-串的模式匹配计算KMP
【Test】单元测试 - 串
第5章 数组和广义表
第5章数组和广义表第1讲-数组的定义及顺序存储
第5章数组和广义表第2讲-特殊矩阵的压缩存储
第5章数组和广义表第3讲-稀疏矩阵的压缩存储
第5章数组和广义表第4讲-广义表的概念
【Test】单元测试 - 数组与广义表
第6章 树与二叉树
第6章树与二叉树第4讲-二叉树的遍历
第6章树与二叉树第5讲-二叉树递归算法设计思想
第6章树与二叉树第6讲-二叉树递归算法设计示例1
第6章树与二叉树第7讲-二叉树递归算法设计示例2
第6章树与二叉树第8讲-二叉树非递归算法设计思想
第6章树与二叉树第9讲-线索二叉树的概念
第6章树与二叉树第10讲-树的存储结构
第6章树与二叉树第11讲-树与二叉树的转换
第6章树与二叉树第12讲-哈夫曼树
第6章树与二叉树第1讲-树的概念
第6章树与二叉树第2讲-二叉树的性质
第6章树与二叉树第3讲-二叉树的存储结构
【Test】单元测试 - 树与二叉树
第7章 图
第7章图第1讲-图的基本概念
第7章图第2讲-图的存储结构
第7章图第3讲-图的存储结构示例
第7章图第4讲-图的遍历
第7章图第5讲-图的算法设计实例
第7章图第6讲-最小生成树-Prim算法
第7章图第7讲-最小生成树-Kruskal算法
第7章图第8讲-图的拓扑排序
第7章图第9讲-图的关键路径
第7章图第10讲-图的单源最短路径-Dijkstra思想
第7章图第11讲-图的单源最短路径-Dijkstra实现
第7章图第12讲-图的单源最短路径-Floyd算法实现
【Test】单元测试 - 图
第9章 查找
第9章查找第1讲-查找的概念和顺序查找
第9章查找第2讲-折半查找
第9章查找第3讲-索引顺序表的查找
第9章查找第4讲-二叉排序树的概念和插入与生成
第9章查找第5讲-二叉排序树的删除
第9章查找第6讲-平衡二叉树
第9章查找第7讲-B-树和B+树
第9章查找第8讲-哈希表的基本概念
第9章查找第9讲-哈希表冲突解决方法
【Test】单元测试 - 查找
第10章 内部排序
第10章内部排序第1讲-排序的概念
第10章内部排序第2讲-直接插入排序
第10章内部排序第3讲-希尔排序
第10章内部排序第4讲-冒泡排序
第10章内部排序第5讲-快速排序
第10章内部排序第6讲-简单选择排序
第10章内部排序第7讲-堆排序
第10章内部排序第8讲-归并排序
第10章内部排序第9讲-基数排序
【Test】单元测试 - 内部排序
了解“计算机系统基础”课程;掌握C语言程序设计。
为积极响应国家低碳环保政策, 2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。
电子版认证证书支持查询验证,可通过扫描证书上的二维码进行有效性查询,或者访问 https://www.icourse163.org/verify,通过证书编号进行查询。学生可在“个人中心-证书-查看证书”页面自行下载、打印电子版认证证书。
完成课程教学内容学习和考核,成绩达到课程考核标准的学生(每门课程的考核标准不同,详见课程内的评分标准),具备申请认证证书资格,可在证书申请开放期间(以申请页面显示的时间为准),完成在线付费申请。
认证证书申请注意事项:
1. 根据国家相关法律法规要求,认证证书申请时要求进行实名认证,请保证所提交的实名认证信息真实完整有效。
2. 完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。
主教材:
数据结构(C语言版)严蔚敏 ISBN:9787302147510, 清华大学出版社,2019.
参考教材:
(1)数据结构(C语言版)(第2版)殷人昆 ISBN:9787302459897,清华大学出版社,2017.
(2)数据结构教程(第5版)李春葆 ISBN:9787302455882,清华大学出版社,2017.
(3)数据结构精讲与习题详解(C语言版) 第2版 殷人昆 ISBN:9787302465126,清华大学出版社,2017.
(4)数据结构 刘遵仁 书号:978-7-5635-5436-2, 北京邮电大学出版社, 2018.
(5)数据结构常见题型解析及模拟题 刘遵仁 ISBN:9787118043129,国防工业出版社,2006.