《数据结构与算法》课程教学大纲

18/11/08 15:40:00 作者: 点击:[] [小] [中] [大]

1、 课程名称:数据结构与算法

2、 课程代码:SE21013

3、 学时和学分:48学时,3学分

4、 适用专业:软件工程

5、 先修课程:程序设计基础,离散数学

6、 使用教材:Clifford A. Shaffer著,张铭,刘晓丹等译.数据结构与算法分析(第三版),电子工业出版社,2013年10月

7、 参考书目:

(1)严蔚敏.《数据结构》.清华大学出版社,2000.

(2) 李春葆.《数据结构教程》.清华大学出版社,2002.

8、 课程描述(200-300字左右):

《数据结构与算法》是软件工程本科专业的专业基础课程。课程的主要目的是使学生掌握数据结构与算法的基础理论和基本方法,提高学生对各种数据结构与算法的程序设计能力,以及提高学生对数据结构与算法的实际运用能力。课程主要内容包括线性表、栈和队列、二叉树、树、图、内排序、文件管理和外排序、检索、索引技术和分析技术。课程既包括基础概念、基本方法的理论学习,也包括数据结构与算法的C++语言实现,理论与和实践并重。

9、 教学目标(需明确各教学环节对人才培养目标的贡献)

知识贡献:掌握线性表、栈、队列、二叉树、树、图等基本数据结构的概念;掌握各类数据结构中元素的增加、修改、删除、查找等基本操作的算法流程;掌握二叉树、二叉检索树、高度平衡二叉树、堆、树等非线性数据结构的基本性质;掌握顺序查找、二分查找两种常见的线性表检索方法;掌握插入排序、选择排序、冒泡排序、快速排序、归并排序、堆排序等常见的排序方法;理解文件管理的概念,掌握常见的外排序算法;掌握图的基本概念、图的存储方法和实现方法,理解图的遍历、最短路径、最小生成树等方面的常用算法。

能力贡献:通过学习数据结构与算法的基本概念和基本原理,增强学生对抽象数据类型的理解能力;通过用C++编程语言实现数据结构和算法,增强学生的程序设计能力;掌握基本的算法分析技术,增强对算法流程和程序实现的分析能力;通过分析数据结构与算法的应用案例、上机练习以及数据结构与算法应用设计,培养学生利用所学知识解决具体问题的能力和创新能力。

素质贡献:在理论学习、编程实现、算法应用等各个环节中,养成认真、踏实、细心的良好习惯,提升专业素养。

10、教学方法:

课程讲授:讲解基础理论和基本方法,通过分析经典案例展示数据结构与算法的应用领域和应用方法

课外自学:通过Sakai平台提供教学资料,学生通过自学深化、拓展课程内容

上机练习:使用C++语言编写程序,验证基本的数据结构与算法

课外设计:结合案例分析,提供参考题目,学生自己设计解决方案,体验数据结构与算法的应用效果

11、考核及成绩评定方式:

课程成绩=出勤*10% +平时作业*30% +期末考试*60%