数据结构 教材 朱战立编著,数据结构使用C 语言(第3版),西安交通大学出版 社,2003年
教材: 朱战立编著,数据结构——使用C 语言(第3版),西安交通大学出版 社,2003年 数 据 结 构
课前的话一一计算机系列课程之间的联系 计算机概论与上机操侑(对21世纪公民要求) 程序设计与算法语司( BASIC FORTRAN PASCAL C等,怎样使用计算机 计算机组成原理:(所有计算机的共性) 微机原理及应用(特定机型介绍,单片机或8086PC机,怎样应用计算机) 控制之路 数据处理之路 汇编语言程序设计 歐据结构 单片机技术微机接国 躁作系统 歐件技术基础 里囵 数据库理 算机网绍 歐件工程 应用系统设讯 计算机网绍
2 课前的话— —计算机系列课程之间的联系 计算机概论与上机操作(对 21 世纪公民要求) 程序设计与算法语言(BASIC FORTRAN PASCAL C 等,怎样使用计算机) 计算机组成原理(所有计算机的共性) 微机原理及应用(特定机型介绍,单片机或 8086 PC 机,怎样应用计算机) 控制之路 数据处理之路 汇编语言程序设计 数据结构 单片机技术/微机接口 操作系统 软件技术基础 数据库理论 计算机网络 软件工程 应用系统设计 计算机网络
数据结构课程的地位 它是计算机专业及相关专业的核心课 程之一,是计算机及相关专业的重要骨干 基础课程 它针对非数值计算的程序设计问题, 研究计算机的操作对象以及它们之间的关 系和操作。即其研究目的是研究有效地组 织和处理非数值类型数据的理论、技术和 方法
3 数据结构课程的地位 它是计算机专业及相关专业的核心课 程之一,是计算机及相关专业的重要骨干 基础课程。 它针对非数值计算的程序设计问题, 研究计算机的操作对象以及它们之间的关 系和操作。即其研究目的是研究有效地组 织和处理非数值类型数据的理论、技术和 方法
数据结构的核心研究内容 数据的逻辑结构、存储结构及它们之 间的关系和相应的基本操作运算的定义和 实现。 本书围绕数据结构的三种基本结构 线性结构(第25章)、树形结构(第7章) 和图形结构(第8章)展开讨论,研究解 决如下问题:一个具体问题的逻辑数据结 构是什么?适宜选用什么样的存储结构? 采用什么样的操作实现算法效率更高?
4 数据结构的核心研究内容 数据的逻辑结构、存储结构及它们之 间的关系和相应的基本操作运算的定义和 实现。 本书围绕数据结构的三种基本结构: 线性结构(第2-5章)、树形结构(第7章) 和图形结构(第8章)展开讨论,研究解 决如下问题:一个具体问题的逻辑数据结 构是什么?适宜选用什么样的存储结构? 采用什么样的操作实现算法效率更高?
学时数:64(52学时授课+12学时上机) 学分:35 教材:朱战立编著,数据结构(使用C语言)第 3版,西安交通大学出版社,2003年 参考书: ∏严蔚敏等,数据结构(C语言版),清华大 学出版社 2数据结构学习指导与典型题解,朱战立等编 著,西安交通大学出版社,2002年
5 学时数:64(52学时授课+12学时上机) 学 分: 3.5 教材:朱战立编著,数据结构(使用C语言)第 3版,西 安交通大学出版社 ,2003年 参考书: [1]严蔚敏等,数据结构(C语言版),清华大 学出版社 [2] 数据结构学习指导与典型题解,朱战立等编 著,西安交通大学出版社 ,2002年
内容安排 章内容学时章 内容 学时 绪论 7树和二叉树10 线性表 3栈和队列 4 串 数组 396332 89 图 排序 466 10 查找 ll上机(共六次)12 6递归算法 计 1264
6 内 容 安 排 章 内 容 学时 章 内 容 学时 1 绪 论 3 7 树和二叉树 10 2 线性表 9 8 图 4 3 栈和队列 6 9 排序 6 4 串 3 10 查找 6 5 数组 3 11 上机(共六次) 12 6 递归算法 2 合计 1264
对学生的几点要求 1、上课认真听讲,适当做好笔记,按时交作业 2、考试成绩分两部分:平时成绩(包括出勤和上机实验)占 30%,期末成绩占70%。 3、课后需要多读课文和参考书,上网查看相关内容,在理解 基本内容的基础上,多看、多做习题 4、上机实验十分重要,一定要在上机前做好充分准备,多采 用不同的数据存储结构和不同的实现算法解决一个问题
7 1、上课认真听讲,适当做好笔记,按时交作业。 2、考试成绩分两部分:平时成绩(包括出勤和上机实验)占 30%,期末成绩占70%。 3、课后需要多读课文和参考书,上网查看相关内容,在理解 基本内容的基础上,多看、多做习题。 4、上机实验十分重要,一定要在上机前做好充分准备,多采 用不同的数据存储结构和不同的实现算法解决一个问题。 对学生的几点要求
第1章绪论 讨论5个问题: 1.1数据结构的基本概念 12学习数据结构的意义 13数据结构涵盖的主要内容 14什么是抽象数据类型 15算法效率的度量
8 第1章 绪 论 讨论5个问题: 1.1 数据结构的基本概念 1.2 学习数据结构的意义 1.3 数据结构涵盖的主要内容 1.4 什么是抽象数据类型 1.5 算法效率的度量
1.1数据结构的基本概念 1、举例 建立一个学生档案。学生表包括学号、姓名、性别 籍贯。要求:查找“王红”是否存在。 解决的方法步骤: 1)如何记录所有学生记录(及选择何种逻辑数据结 构)? 2)选择何种存储结构? ◇若把所有记录依次存储在一个数组中采用 顺序存储结构 若采用指针链表—采用链式存储结构
9 1.1 数据结构的基本概念 1、举例 建立一个学生档案。学生表包括学号、姓名、性别、 籍贯。要求:查找“王红”是否存在。 解决的方法步骤: 1) 如何记录所有学生记录(及选择何种逻辑数据结 构)? 2) 选择何种存储结构? ❖ 若把所有记录依次存储在一个数组中——采用 顺序存储结构 ❖ 若采用指针链表——采用链式存储结构
2、基本术语 (1)数据:所有能被计算机识别、存储和处理的符号的集合(包 括数字、字符、声音、图像等信息)。 (2)数据元素:是数据的基本单位,具有完整确定的实际意义。 在计算机程序中通常作为一个整体进行考虑和处理。一个数 据元素可由若干个数据项组成。 (3)数据项:构成数据元素的项目。它是数据不可分割的最小单 位 (4)数据类型:指一个类型和定义在这个类型上的操作集合。例 C语言(基本类型:整型、浮点型、字符型等构造类型:数组 结构、联合、指针、枚举等) (5)抽象数据元素:抽象定义的、没有实际含义的数据元素 (6)抽象数据类型:用户自己定义的数据类型
10 2、基本术语 (1)数据:所有能被计算机识别、存储和处理的符号的集合(包 括数字、字符、声音、图像等信息 )。 (2)数据元素:是数据的基本单位,具有完整确定的实际意义。 在计算机程序中通常作为一个整体进行考虑和处理。一个数 据元素可由若干个数据项组成。 (3)数据项:构成数据元素的项目。它是数据不可分割的最小单 位。 (4)数据类型:指一个类型和定义在这个类型上的操作集合。例: C语言(基本类型:整型、浮点型、字符型等构造类型:数组、 结构、联合、指针、枚举等) (5)抽象数据元素:抽象定义的、没有实际含义的数据元素。 (6)抽象数据类型:用户自己定义的数据类型