编辑推荐
暂无
内容简介
“数据结构”是计算机学科的专业核心基础课程,是一门集理论性和实践性于一体的课程。
“数据结构”的教学目的是:首先,让学生理解什么是“数据结构+算法一程序”,即让学生懂得设计程序求解问题时,不仅仅要实现一个有效、合理的算法,还要求设计出与之结合的恰当的数据结构;其次,培养学生的抽象能力,即如何为应用中所涉及的数据选择适当的逻辑结构、存储结构及相应算法;最后,培养学生的实践编程能力,使之编写的程序符合软件工程规范。总之,通过本门课程的学习,为学生学习后续课程和将来进行软件开发等打下坚实的基础。
本教材具有以下特点:
·每章开头的“知识点”和“学习要求”对本章的学习起到了“提纲挈领”的作用。
·全书对于理论知识点的讲解,循序渐进,思路清晰;针对每一个知识点,都配有相应的实例说明。
·所有算法(数据操作)都用C语言函数实现,几乎不用做任何修改就可被其他函数调用。为方便初学者实践验证“数据结构”的算法,前面几章还给出了算法实现的完整C源程序。
作者简介
暂无
目录
前言
第1章  ;概论
1.1  ;什么是数据结构
1.1.1  ;基本概念和术语
1.1.2  ;数据的存储结构
1.1.3  ;数据结构与数据类型
1.2  ;为什么要学习数据结构
1.2.1  ;数据结构的重要性
1.2.2  ;数据结构的一个应用例子
1.3  ;算法和算法分析
1.3.1  ;算法的特点
1.3.2  ;算法的度量
本章小结
习题
 ;
第2章  ;线性表
2.1  ;线性表的定义及基本操作
2.1.1  ;线性表的定义
2.1.2  ;线性表的基本操作
2.2  ;线性表的顺序存储
2.2.1  ;顺序表的定义
2.2.2  ;顺序表的基本操作
2.3  ;线性表的链式存储
2.3.1  ;单链表
2.3.2  ;双向链表
2.3.3  ;循环链表
2.3.4  ;静态链表
2.4  ;线性表的存储方式小结
2.5  ;线性表的应用
2.5.1  ;顺序表的应用
2.5.2  ;链表的应用
本章小结
实验
习题
 ;
第3章  ;栈和队列
3.1  ;栈
3.1.1  ;栈的定义
3.1.2  ;栈的基本操作
3.1.3  ;栈的顺序存储
3.1.4  ;栈的链式存储
3.2  ;队列
3.2.1  ;队列的定义
3.2.2  ;队列的基本操作
3.2.3  ;队列的顺序存储
3.2.4  ;队列的链式存储
3.3  ;栈和队列的应用
3.3.1  ;栈的应用
3.3.2  ;队列的应用
本章小结
实验
习题
 ;
第4章  ;串
4.1 串的基本概念及基本运算
4.1.1 串的基本概念
4.1.2 串的基本操作
4.2 串的存储结构
4.2.1 串的顺序存储结构
4.2.2 串的链式存储结构
4.3 串的模式匹配运算
4.3.1 基本的模式匹配算法
4.3.2 模式匹配的改进算法--KMP算法
本章小结
实验
习题
第5章 数组和广义表
5.1 数组的存储结构与寻址
5.1.1 一维数组的存储结构
5.1.2 二维数组的存储结构
5.2 矩阵的压缩存储
……
第6章 树和二叉树
第7章 图
第8章 查找
第9章 排序
各章习题参考答案
参考文献
免费在线读
第1章 概论
1.1 什么是数据结构
信息是人们对现实世界中各种事物的描述,计算机学科是一门研究如何用计算机对信息进行表示和处理的科学。信息在计算机中的表示及组织结构又直接影响甚至决定了计算机对信息的处理。随着计算机应用技术的发展,需要计算机表示和处理各种各样的多媒体数据,许多系统程序和应用程序的规模很大,结构又相当复杂。因此,为了编写出一个“好”的程序,必须研究分析待处理对象的特征及各对象之间存在的关系,这就是数据结构这门课程所要研究的问题。通过学习它,也会为计算机专业后续课程(如软件工程、编译原理和操作系统等)的学习打下坚实的基础。
1.1.1 基本概念和术语
对现实世界中的事物及活动,人们利用文字、数字以及其他规定的符号所做的抽象描述,称为信息。从计算机的角度来看,所有被输入到计算机中,被计算机处理的符号化了的信息,我们称之为数据。可见数据是信息在计算机中的载体(或者说表示形式),它能够被计算机识别、存储和加工处理。计算机内的数据可包含整数、实数、字符串、图像和声音等各种类型。归类起来,我们可以得到以下几个有关数据的基本概念:
……
数据结构(C语言版)第二版 pdf下载声明
本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版