top
请输入关键字
本科生课程:04831420

数据结构与算法(B)  Data Structure and Algorithm (B)

学分:3.0  周学时:3


预备知识:

本课程要求学生已学过“计算概论”课程,掌握了一门程序设计语言(例如C/C++/JAVA)的基本知识,并且有了一些进行程序设计的实际经验。


课程简介:

数据结构与算法(B类)是理科(非计算机专业)的一门重要的计算机必修课,是一门理论和实际紧密结合的课程。本课的主要目的是使学生较全面地理解算法和数据结构的概念、掌握各种数据结构与算法的实现方式,比较不同数据结构和算法的特点。通过学习,使学生能够提高用计算机解决实际问题的能力。


内容提要:

数据结构是计算机科学中一门综合性的专业基础课。主要介绍:线性表,栈,队列,数组,串,树,二叉树,图等基本数据结构及应用,排序及查找的原理与方法。通过本课程的学习,使学生能深入理解数据结构的逻辑结构和物理结构的基本概念,合理地组织数据、有效地存储和处理数据,正确地设计算法以及分析和评价算法。培养基本的、良好的程序设计技能,编制高效可靠的程序。


基本要求:

1.了解数据结构及其分类、数据结构与算法的密切关系。

2.熟悉各种基本数据结构及其操作,学会根据实际问题要求来选择数据结构。

3.掌握设计算法的步骤和算法分析方法。

4.深入理解排序和查找的常用算法。

5了解STL的实现。


教学方式:

以课堂讲授为主,配和上机。每次课都布置作业,包括上机作业。


课程教材:

张乃孝《算法与数据结构—C程序描述》,高教出版社 2007


参考书目:

[1]严蔚敏等著,《数据结构》,清华大学出版社

[2]Donald E.Knuth, The Art of Computer Programming Volumes 1-3 Boxed Set, 清华大学出版社

[3]Sartej Sahni, Data Structures, Algorithms, and Applications in C++, 机械工业出版社

[4]William J.Collins, Data Structures and the Standard Template Library, 机械工业出版社

[5]Thomas H.Cormen, Charles E.Leiserson, Ronald L.Rivest, Clifford Stein, Introduction to Algorithms(Second Edition), 高等教育出版社