数据结构教程

分類: 图书,计算机/网络,数据库,数据库理论,
作者: 石连栓主编
出 版 社: 中国劳动出版社
出版时间: 2006-5-1字数: 394000版次: 1页数: 288印刷时间: 2006/05/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787504554680包装: 平装内容简介
本书系统介绍了各种典型的数据结构,内容包括线性表、栈和队列、串、数组和广义表、树和二叉树、图、查找、排序和文件。书中内容表述严谨,概念清楚,逻辑性强,并注重实际应用。各章节所讲述的数据结构和算法都给出了具体的描述,并附有习题,供读者加深对概念的理解和算法的掌握。
本书可作为高等职业学校和大中专院校计算机应用专业的教材,也可作为非计算机应用专业本科生选修课的教材,还可供从事计算机应用技术的人员参考。
目录
第1章绪论
1.1什么是数据结构
1.2基本概念和术语
1.3数据的逻辑结构
1.4数据的存储结构
1.4.1顺序存储方式
1.4.2链式存储方式
1.4.3索引存储方式
1.4.4散列存储方式
1.5算法和算法分析
1.5.1算法
1.5.2算法设计的要求
1.5.3算法效率的度量
习题一
第2章线性表
2.1线性表的逻辑结构
2.1.1线性表的定义
2.1.2线性表的基本操作
2.2线性表的顺序存储及运算实现
2.2.1顺序表
2.2.2顺序表上基本运算的实现
2.2.3顺序表应用举例
2.3线性表的链式存储及运算实现
2.3.1线性链表
2.3.2单链表的运算
2.3.3循环链表
2.3.4循环链表的运算
2.3.5双向链表
2.3.6双向链表的运算
2.3.7简单应用举例
2.4顺序表和链表的比较
习题二
第3章栈和队列
3.1栈
3.1.1栈的定义
3.1.2栈的顺序存储结构及基本运算的实现
3.1.3栈的链式存储结构及基本运算的实现
3.2栈的应用举例
3.2.1表达式求值
3.2.2数制转换
3.2.3迷宫求解
3.2.4行编辑程序
3.3栈与递归
3.3.1递归算法的基本思想
3.3.2递归调用的实现
3.4队列
3.4.1队列的定义
3.4.2队列的顺序存储结构及基本运算的实现
3.4.3队列的链式存储结构及基本运算的实现
3.4.4队列的应用
习题三
第4章串
第5章数组和广义表
第6章树和二叉树
第7章图
第8章查找
第9章排序
第10章文件
参考文献
书摘插图
第1章绪论
1.1 什么是数据结构
数据结构(data structure)是指数据之间的关系,它一般包括3个方面的内容:一是数据之间的逻辑关系,也称为数据的逻辑结构;二是数据元素及其关系在计算机存储器内的表示,称为数据的存储结构,也就是物理结构;三是数据的运算,即对数据进行的操作。
在计算机处理数据的过程中,数据之间并不是彼此孤立、杂乱无章的,它们之间存在着内在的联系。通过利用数据内部客观存在的关系,可以把各数据元素有机地组织起来,从而能对这些数据进行有效地处理。
现以银行中的数据为例,来说明这个问题。
首先引入记录的概念。记录,是由一组相关联的不同类型的数据组成的一个整体。例如,一个银行储户的基本情况,包括姓名、地址、账号、身份证号、开户日期、存款余额等项目,可以把它们组织起来,构成一个储户的基本资料,称为该储户的记录。然后,再把各储户的记录组合起来,构成银行全部储户的数据。当需要查找一个储户的基本资料时,不需要分别去查找该储户的地址、账号、身份证号、开户日期、存款余额等信息,只要从计算机内调出该储户的记录,储户的基本情况就一目了然了。这就是数据结构的作用。
然后再考虑储户记录的查找问题。
银行储户的名册是经常变化的。查找储户最主要的工作是:当给出储户的账户名或账号时,能在储户记录中迅速查找到其账号的有关信息,如还有多少存款、存期多长、利率多少等。
……