个人介绍
数据结构与算法 蒋娜等
提供学校: 江西财经大学
院系: 软件与通信工程学院
转运类别: 电子信息类
课程编号: 17913
学分: 3
课时: 48
课程介绍
课程教学目的

让学生懂得“数据结构+算法=程序”,程序不仅是算法的实现,求解问题要恰当设计数据结构,并把它和求解算法结合起来;培养学生数据抽象的能连,不仅要学生了解链表、树、图等数据结构是如何实现的,而且要特别加强对数据逻辑关系的分析与认识;将数据结构与算法的理论分析与编程实践相结合,在实际应用中灵活应用。

课程教学要求

基本知识教学要求:掌握在软件工程中大量使用的查找和排序技术,能从复杂的实际问题中抽象出数据模型,并分析出数据类型和算法。

能力教育要求:培养学生掌握计算机软件系统所必需的数据结构的算法,增强学生编制、测试程序的能力。

本课程的重点和难点

课程的教学重点:是从抽象数据类型的角度,分别讨论线性表、栈、队列、树和二叉树及图等基本类型的数据结构及其应用,并介绍了搜索及排序的实现方法和分析比较。

教学难点:是要通过这些典型的数据类型,使学生学会分析研究计算机加工的数据结构的特性,一边为应用涉及的数据选择适当地逻辑结构、存储结构及其相应的算法,并初步掌握算法的时间分析和空间分析技术。
教师团队

蒋娜 教师

部门:软件与通信工程学院

邓庆山 副教授

单位:江西财经大学

部门:软件与通信工程学院

教学方法


案例教学方法。以多个实际的软件项目为案例,介绍相关数据结构及算法在项目的具体运用,让学生充分感受到所学内容的价值,提高学习兴趣。

项目驱动教学。以一个或多个具体项目为载体,学习某一块的知识点。以分析一个项目开始,以实现一个项目结束。中间过程中讲练结合,学习目标非常明确,逐个解决项目中每个问题,并最终完成整个项目的实现。


课程内容

一、绪论

  1. 数据结构引入

  2. 数据结构的基本概念

  3. 逻辑结构

  4. 存储结构

  5. 抽象数据类型:ADT

  6. 算法的概念

  7. 算法的度量:时间复杂度

  8. 算法的度量:空间复杂度

二、线性表

  1. 线性表概念

  2. 线性表的基本操作

  3. 线性表的顺序存储表示

  4. 顺序表的实现

  5. 单链表的基本概念

  6. 单链表的实现

  7. 循环链表简介

  8. 双向链表简介

  9. 线性表的应用一:一般线性表的合并

  10. 线性表的应用二:有序表的合并

  11. 线性表的应用三:一元多项式的表示与相加

三、栈

  1. 栈概念

  2. 栈的基本操作

  3. 栈的顺序存储表示

  4. 顺序栈的实现

  5. 链栈的表示与实现

  6. 栈的应用一:数制转换

  7. 栈的应用二:表达式求值

  8. 栈与递归

四、队列

  1. 队列概念

  2. 队列的基本操作

  3. 队列的顺序存储表示:循环队列

  4. 循环队列的实现

  5. 链队列的表示与实现

五、数组

  1. 数组的引入

  2. 数组的顺序存储

  3. 特殊矩阵的压缩存储

  4. 稀疏矩阵的压缩存储

六、树与二叉树

  1. 树的引入

  2. 树的基本术语

  3. 二叉树的概念

  4. 二叉树的基本操作

  5. 二叉树的性质

  6. 二叉树的顺序存储表示

  7. 二叉树的链式存储表示

  8. 二叉树的遍历操作

  9. 线索二叉树的基本概念

  10. 树的存储结构

  11. 树、森林与二叉树的相互转换

  12. 树和森林的遍历

  13. 哈夫曼树的基本概念

  14. 哈夫曼树的构造算法

  15. 哈夫曼算法的实现

  16. 哈夫曼树的应用:哈夫曼编码

七、图

  1. 图的引入

  2. 图的基本术语

  3. 图的存储结构:邻接矩阵

  4. 图的存储结构:邻接表

  5. 图的遍历运算

  6. 图的深度优先遍历

  7. 图的广度优先遍历

  8. 最小生成树的概念

  9. 普里姆算法

  10. 克鲁斯卡尔算法

  11. 拓扑排序的基本概念

  12. 拓扑排序的算法实现

  13. 关键路径的概念

  14. 关键路径的求解

  15. 关键路径的算法思想

  16. 最短路径的概念

  17. 迪杰斯特拉算法

  18. 弗洛伊德算法简介

八、查找

  1. 查找的引入

  2. 查找的概念

  3. 顺序查找法

  4. 折半查找算法

  5. 折半查找算法性能分析

  6. 二叉排序树的基本概念

  7. 二叉排序树的查找

  8. 二叉排序树的插入

  9. 二叉排序树的删除

  10. 二叉排序树的创建

  11. 平衡二叉树的概念

  12. 散列查找的基本概念

  13. 散列函数的构造方法

  14. 冲突处理方法:开放地址法

  15. 冲突处理方法:链地址法

  16. 散列查找的性能分析

九、内部排序

  1. 排序的引入

  2. 排序的概念

  3. 直接插入排序

  4. 希尔排序

  5. 起泡排序

  6. 快速排序

  7. 简单选择排序

  8. 堆排序

  9. 归并排序

  10. 基数排序

  11. 排序算法比较与分析



课程成绩

1.平时成绩20%(其中网络学习成绩10%,课堂考勤10%

2.实践(上机)成绩30%

3.期中成绩20%

4.期末成绩30%

参考教材

1.《数据结构》(C语言版)严蔚敏编,人民邮电出版社,2012

2.《数据结构》(C语言版)严蔚敏编,清华大学出版社  1997

3.《数据结构与算法分析-C语言描述》MarkEllen Weiss编,冯舜玺译,机械工业出版社 2004


教学资源
课程章节 | 名称   | 上传时间 | 大小 | 备注
1.3 教学大纲
142-48283数据结构与算法教学大纲_邓庆山.doc
.doc
2016-02-27 77.00KB
 
142-4812B--数据结构与算法(软件)实验教学大纲-蒋娜.doc
.doc
2016-02-27 81.00KB
1.4 教学进度
152-4812B-数据结构与算法实践-教学进度表-BA4-BA5班蒋
.
2016-02-27 57.00KB
1.5 实践教学
152-4812B--数据结构与算法-实验申请表-BA4-BA5班蒋娜
.
2016-02-27 76.00KB
2.1 绪论
152-chap1绪论-48283.ppt
.ppt
2016-02-29 2.25MB
3.1 绪论
0102数据结构的引入.ppt
.ppt
2015-08-26 1.57MB
 
0103数据结构的基本概念.ppt
.ppt
2015-08-26 1.70MB
 
0104抽象数据类型—ADT.ppt
.ppt
2015-08-26 530.00KB
 
0105算法的基本概念.ppt
.ppt
2015-08-26 1.56MB
 
0106算法度量.ppt
.ppt
2015-08-26 1.48MB
 
0107时间复杂度计算.ppt
.ppt
2015-08-26 590.00KB
 
102(预览版).mp4
.mp4
2015-11-30 22.65MB
 
103(预览版).mp4
.mp4
2015-11-30 26.19MB
 
104(预览版).mp4
.mp4
2015-11-30 11.74MB
 
105(预览版).mp4
.mp4
2015-11-30 34.73MB
 
106(预览版).mp4
.mp4
2015-11-30 26.62MB
 
107(预览版).mp4
.mp4
2015-11-30 16.96MB
3.2 线性表
201(预览版).mp4
.mp4
2015-08-25 11.39MB
 
202(预览版).mp4
.mp4
2015-08-25 17.12MB
 
203(预览版).mp4
.mp4
2015-08-25 7.39MB
 
204(预览版).mp4
.mp4
2015-08-25 10.61MB
 
205(预览版).mp4
.mp4
2015-08-25 11.60MB
 
206(预览版).mp4
.mp4
2015-08-25 6.79MB
 
207(预览版).mp4
.mp4
2015-08-25 15.03MB
 
208(预览版).mp4
.mp4
2015-08-25 13.27MB
 
209(预览版).mp4
.mp4
2015-08-25 11.28MB
 
210.mp4
.mp4
2015-08-25 10.33MB
 
211.mp4
.mp4
2015-08-25 10.30MB
 
0201线性表的引入.ppt
.ppt
2015-08-26 858.00KB
 
0202线性表的基本操作.ppt
.ppt
2015-08-26 735.00KB
 
0203线性表的顺序存储操作.ppt
.ppt
2015-08-26 605.00KB
 
0204顺序表基本操作的实现.ppt
.ppt
2015-08-26 345.50KB
 
0205顺序表的插入.ppt
.ppt
2015-08-26 387.00KB
 
0206顺序表的删除.ppt
.ppt
2015-08-26 330.00KB
 
0207单链表的基本概念.ppt
.ppt
2015-08-26 591.00KB
 
0208单链表的查找.ppt
.ppt
2015-08-26 231.50KB
 
0209链表节点的插入算法.ppt
.ppt
2015-08-26 674.50KB
 
0210链表节点的删除算法.ppt
.ppt
2015-08-26 537.00KB
 
0211链表的创建.ppt
.ppt
2015-08-26 1.85MB
 
0212线性表的合并.ppt
.ppt
2015-08-26 1.61MB
3.6 树与二叉树
0602树的基本术语.ppt
.ppt
2015-08-26 1.20MB
 
0603二叉树的概念.ppt
.ppt
2015-08-26 766.00KB
 
0604二叉树的基本操作.ppt
.ppt
2015-08-26 1.21MB
 
0605二叉树的性质.ppt
.ppt
2015-08-26 2.22MB
 
0606二叉树的顺序存储结构.ppt
.ppt
2015-08-26 1.81MB
 
0607二叉树的链式存储结构.ppt
.ppt
2015-08-26 2.06MB
 
0608二叉树遍历的种类.ppt
.ppt
2015-08-26 983.00KB
 
0609遍历序列确定二叉树.ppt
.ppt
2015-08-26 1.06MB
 
0610二叉树遍历的递归算法.ppt
.ppt
2015-08-26 870.50KB
 
0611二叉树的非递归遍历算法.ppt
.ppt
2015-08-26 536.00KB
 
0612二叉树的层序遍历.ppt
.ppt
2015-08-26 461.50KB
 
0613 二叉树遍历算法的应用.ppt
.ppt
2015-08-26 706.50KB
 
0614树的存储结构-双亲表示法和孩子表示法.ppt
.ppt
2015-08-26 1.25MB
 
0615树的存储结构-孩子兄弟表示法.ppt
.ppt
2015-08-26 1.44MB
 
0616树与森林的遍历.ppt
.ppt
2015-08-26 1.13MB
 
0602 树的基本术语.mp4
.mp4
2016-05-10 17.35MB
 
0603 二叉树的概念.mp4
.mp4
2016-05-10 7.36MB
 
0604 二叉树的基本操作.mp4
.mp4
2016-05-10 14.37MB
 
0605 二叉树的性质.mp4
.mp4
2016-05-10 22.03MB
 
0606 二叉树的顺序存储结构(修改版).mp4
.mp4
2016-05-10 9.92MB
 
0607 二叉树的链式存储结构.mp4
.mp4
2016-05-10 11.34MB
 
0608 二叉树遍历的种类.mp4
.mp4
2016-05-10 26.07MB
 
0609 遍历序列确定二叉树.mp4
.mp4
2016-05-10 8.51MB
 
0610二叉树遍历的递归算法.mp4
.mp4
2016-05-10 18.41MB
 
0611 二叉树的非递归遍历算法.mp4
.mp4
2016-05-10 24.34MB
 
0612 二叉树的层序遍历.mp4
.mp4
2016-05-10 27.18MB
 
0613 二叉树遍历算法的应用.mp4
.mp4
2016-05-10 25.33MB
 
0614 树的存储结构-双亲表示法和孩子表示法.mp4
.mp4
2016-05-10 27.27MB
 
0615 树的存储结构-孩子兄弟表示法.mp4
.mp4
2016-05-10 19.56MB
3.8 查找
301.mp4
.mp4
2015-08-26 10.43MB
 
302.mp4
.mp4
2015-08-26 24.51MB
 
303.mp4
.mp4
2015-08-26 9.83MB
 
304.mp4
.mp4
2015-08-26 18.37MB
 
0301查找的引入待修改.ppt
.ppt
2015-08-26 468.00KB
 
0302查找的基本概念.ppt
.ppt
2015-08-26 335.50KB
 
0303顺序查找.ppt
.ppt
2015-08-26 322.50KB
 
0304折半查找.ppt
.ppt
2015-08-26 476.50KB
3.9 排序
401.mp4
.mp4
2016-02-28 7.19MB
 
402.mp4
.mp4
2016-02-28 13.42MB
 
403.mp4
.mp4
2016-02-28 17.97MB
 
404.mp4
.mp4
2016-02-28 21.05MB
 
405.mp4
.mp4
2016-02-28 13.01MB
 
406.mp4
.mp4
2016-02-28 16.06MB
 
407.mp4
.mp4
2016-02-28 9.70MB
 
409.mp4
.mp4
2016-02-28 8.37MB
5.1 单元测试一
绪论-单元测验
.${file.extension}
2015-10-25 0.00KB
5.2 单元测试二
单元测验二:线性表
.${file.extension}
2015-10-13 0.00KB
5.3 单元测试三
单元测试三:栈和队列
.${file.extension}
2015-10-13 0.00KB
5.4 单元测试四
单元测试四:树和二叉树
.${file.extension}
2015-10-13 0.00KB
5.5 单元测试五
单元测试五:图
.${file.extension}
2015-10-13 0.00KB
5.6 单元测试六
单元测试六:查找
.${file.extension}
2015-10-13 0.00KB
5.7 单元测试七
单元测试七:排序
.${file.extension}
2015-10-13 0.00KB
6.1 数据结构(C语言版)严蔚敏
[数据结构(C语言版)].严蔚敏_吴伟民.扫描版.pdf
.pdf
2015-12-17 28.95MB
6.2 数据结构与算法分析-C语言描述Mark Allen Weiss
数据结构与算法分析:C语言描述.pdf
.pdf
2015-12-17 40.94MB
提示框