数据结构与算法分析 Data Structure
第一章、绪论
1、教学内容
(1)数据结构的一些基本概念:数据、数据元素、数据逻辑结构、数据存储结构、数据类型、算法等;
(2)抽象数据类型;
(3)描述算法所用的类C语言中的一些有关问题;
(4)算法时间复杂度和空间复杂度的分析。
2、学习绪论的基本要求
了解本课程的性质、任务和目的,掌握数据结构的一些基本概念,掌握算法的时间复杂度和空间复杂度的分析方法,了解抽象数据类型的定义和使用,了解算法的描述方法。
第二章、线性表
1、教学内容
(1)线性表的基本概念和类型定义;
(2)线性表的顺序存储结构;
(3)线性表的链接存储结构
A、单链表的查找、插入和删除;
B、循环链表;
C、双向链表;
D、一元多项式的表示及相加。
2、基本要求
掌握线性表的基本概念和类型定义;熟练掌握对顺序表和单链表的常用操作方法及其程序实现;掌握循环链表和双向链表的定义和它的插入、删除等操作方法;掌握一元多项式的表示及相加运算。
第三章、栈和队列
1、教学内容
(1)栈的类型定义;
(2)栈的顺序存储和链接存储的表示;
(3)在栈的顺序存储和链接存储上进行各种栈操作的算法;
(4)栈的应用举例;
(5)队列的类型定义;
(6)队列的顺序存储(循环队列)和链接存储表示及各种操作的实现算法。
2、基本要求
掌握栈和队列的定义,熟练掌握顺序和链接存储的栈和队列的各种运算的方法及其程序实现,掌握表达式求值等方法并了解其算法。
第四章、串、数组和广义表
1、教学内容
(1)串的定义、存储结构和操作;
(2)数组的定义、抽象数据类型以及顺序存储结构;
(3)特殊矩阵和稀疏矩阵的定义、存储和运算;
(4)广义表的定义和存储结构。
2、 基本要求
掌握串的定义、存储结构和操作;掌握数组的定义、抽象数据类型以及顺序存储结构;掌握特殊矩阵和稀疏矩阵的定义以及各种存储结构,掌握稀疏矩阵的转置和相加的方法并了解其算法;掌握广义表的定义、存储结构的表示方法。