数据结构与算法
分享
课程详情
课程评价
spContent=“数据结构与算法”是理论和实际紧密结合的计算机类专业核心骨干课程,广泛用于数据存储和信息处理中。课程将系统介绍软件开发中常用的数据结构、存储结构和操作算法;简要介绍算法设计与分析中的设计策略,包括贪心法、分治法等。通过学习,使你能解决实际复杂工程问题,成为程序分析和设计“达人”。
—— 课程团队
课程概述

   数据结构是一门面向设计,且处于计算机学科核心地位的技术基础和主干必修课,也是算法分析与设计、操作系统、编译技术、计算机图形与图像处理等专业课程的先修课程。根据学科的最新发展,对所教授课程的教学内容进行必要的筛选、补充、更新和重组,使其既能反映该学科领域最基本最核心的知识,又能反映该学科最新的进展和动态,注重学生“计算思维”能力和创新实践能力的培养,并补充了后续课程和相关领域应用的实例。

   计算机科学的重要基石是算法,数据结构又是算法研究的基础。将数据结构的知识和算法分析与设计的基础知识相结合,以实际的应用案例为驱动,将各种数据结构与算法的知识融入到实际问题的解决中,对相关算法的核心思想进行深入剖析,并总结比较各类算法的特点和适用范围,重点培养学生利用数据结构知识分析和解决实际问题的能力,为后继课程的学习以及从事计算机软、硬件开发工作打下良好的基础。


课程大纲

第一章 引论

1 数据结构的引入(1)(总时长1953秒)

2 数据结构的引入(2)(总时长1405秒)

3 数据结构的基本概念(总时长1523秒)

4 数据结构的逻辑结构和存储结构(总时长819秒)

5 算法及其时间复杂度(1)(总时长1515秒)

6 算法及其时间复杂度(2)(总时长1302秒)

7 习题解析(总时长1356秒)

单元作业

在线练习

 

第二章 线性表

1 单链表的概念及其基本操作(总时长1234秒)

2 循环链表(总时长1345秒)

3 双向链表(总时长17分)

4 一元多项式的表示和运算(总时长1807秒)

5 习题解析(总时长1733秒)

实验内容

单元作业

在线练习

 

第三章 栈和队列

1 栈的概念及其基本操作(总时长1230秒)

2 栈的概念及其基本操作双端栈(总时长1512秒)

3 栈的应用递归及汉诺塔问题(总时长1920秒)

4 栈的应用递归学生实验展示(总时长1526秒)

5 队列的概念及基本操作(总时长1608秒)

6 队列的概念及应用链队列(总时长1259秒)

7 表达式的求值问题(总时长1436)

8 分治法(总时长1306秒)

实验内容

单元作业

单元测试1

 

第四章

1 串的基本操作(总时长1206秒)

2 串的BF简单模式匹配(总时长1409秒)

3 串的KMP模式匹配算法(总时长1123秒)

4 KMP模式匹配的next值计算思想(总时长1026秒)

5 KMP模式匹配的next值计算实现(总时长1046秒)

6 KMP模式匹配的nextval值计算思想和实现(总时长1324秒)

单元作业

在线练习

 

第五章 多维数组和广义表

1 特殊矩阵的压缩存储(总时长1348秒)

2 三元组的快速转置(总时长1604秒)

3 广义表(总时长1458秒)

实验内容

单元作业

在线练习

 

第六章

1 二叉树的顺序存储(总时长804秒)

2 二叉树遍历(总时长1602秒)

3 二叉树的遍历应用——统计叶子结点(总时长0605秒)

4 二叉树的遍历应用——计算二叉树的高度(总时0640分秒)

5 二叉树的遍历应用——二叉树的恢复建立(总时长858秒)

6 二叉树的非递归遍历(总时长1336秒)

7 线索二叉树(1)(总时长952秒)

8 线索二叉树(2)(总时长1201秒)

9 树与森林(1)(总时长1317秒)

10 树与森林(2)(总时长1302秒)

11 哈夫曼树(总时长1433秒)

12 哈夫曼编译码(总时长1401秒)

13 哈夫曼编码算法(总时长0835秒)

14 回溯法(总时长1504秒)

实验内容

单元作业

单元测试2

 

第七章

1 图的深度优先遍历(总时长1338秒)

2 图的广度优先遍历(总时长1126秒)

3 图的最小生成树——prim算法思想(总时长1327秒)

4 图的最小生成树——prim算法实现(总时长1458

5 图的最小生成树——kruskal算法(总时长915秒)

6 图的拓扑排序算法思想(总时长1426秒)

7 图的拓扑排序算法实现(总时长1239秒)

8 图的关键路径算法思想(总时长1401秒)

9 图的关键路径算法实现(总时长819秒)

10 图的单源最短路径——Dijstra算法思想(总时长1231秒)

11 图的单源最短路径——Dijstra算法实现(总时长1011秒)

12 贪心法(总时长1444秒)

实验内容

单元作业

在线练习

 

第八章 查找

1 二叉排序树(总时长1440秒)

2 二叉排序树基本操作(1)(总时长531秒)

3 二叉排序树基本操作(2)(总时长170秒)

4 哈希表基本概念(总时长1321秒)

5 哈希函数(总时长1027秒)

6 哈希处理冲突(总时长1601秒)

实验内容

单元作业

在线练习

 

第九章 排序

1 插入排序(总时长1533秒)

2 冒泡排序(总时长1105秒)

3 快速排序(总时长746秒)

4 选择排序(总时长835秒)

5 树型排序(总时长1103秒)

6 堆排序(总时长1744秒)

7 归并排序(总时长1023秒)

8 分配类排序(总时长1037秒)

单元作业

单元测试3

 

期末考试

预备知识

高级语言程序设计。

具备初步的C程序设计知识,将有助于深入学习本课程的内容。

证书要求

1.完成所有课程的学习内容、视频、课件等;

2.完成课程中的所有单元作业,并完成作业互评,占总成绩的15%;

3.完成所有的在线练习和单元测试,占总成绩30%;

4.参加期末考试,满分100分,占总成绩45%;

5.在“课程讨论区”中发贴和回贴,根据发帖和回帖数量确定成绩,合计参加讨论问题达到10次及以上为满分,占总成绩的10%。

   通过视频学习,完成测试、作业和期末考试。60分-84分为合格,85分及以上为优秀。达到课程要求后,可以获得课程主讲教师签名颁发的合格证书或优秀证书。





参考资料

1.王曙燕等,《数据结构与算法》,人民邮电出版社,2013.9

2.耿国华等,《数据结构-C语言描述(第2版)》及随附教学光盘,高等教育出版社,2011.6

3.严蔚敏等,《数据结构(C语言版)》,清华大学出版社,2007.3.2011.1

辅助学习资源:

西安邮电大学计算机学院数据结构资源共享网址:http://222.24.63.99:8080/