实用数据结构(高职高专计算机教学改革新体系规划教材)
分類: 图书,计算机/网络,数据库,数据库理论,
作者: 林小茶编著
出 版 社: 清华大学出版社
出版时间: 2008-9-1字数: 403000版次: 1页数: 266印刷时间: 2008/09/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787302180630包装: 平装编辑推荐
全面体现全国高校计算机基础教育研究会发布的《中国高职院校计算机教育课程体系2007》的指导思想和课程体系。切合高职特点。
定位准确,内容先进,取舍合理,体系得当,风格优良。
不是根据学科的原则确定课程体系,而是根据实际应用的需要组织课程,突出应用技能。
写法上不是从理论入手,而是从实际问题入手,按照“提出问题——解决问题——归纳分析”的三部曲组织教学,符合读者认知规律,易于学习,有利于培养应用能力。
针对性强,适用性广,符合当前大多数高职院校的实际需要。
内容简介
本书是高职高专计算机和信息类专业的教材,在内容的编排上尽量符合高职高专学生的要求,除了对经典数据结构算法进行了描述外,还选择了一些实用性强的实例。在讲解数据的存储结构时,使用了大量的图示和表格,帮助学生对数据结构及相关算法的理解。
本书的主要内容包括概述、线性表及线性表的顺序存储、线性表的链式存储、哈希表与索引表、栈与队列、内排序、树与二叉树和图。在各章内容的安排上不求大而全,力求少而精,讲解透彻,重点突出。
本书可以作为高职高专学生学习数据结构的教材,也可作为自学者的教材或参考书。
目录
第1章概述
1.1什么是数据结构
1.2数据结构的相关概念和术语
1.3算法
1.3.1算法的概念
1.3.2算法的特性
1.3.3用类C语言描述算法
1.3.4算法的度量
1.4本章小结
习题1
第2章线性表及线性表的顺序存储
2.1线性表的定义
2.1.1线性表的实例
2.1.2线性表的定义和基本操作
2.1.3线性表的数学定义和逻辑图
2.2线性表的顺序存储结构(顺序表)
2.3顺序表基本算法实现
2.3.1 线性表内容与线性表长度分别存储的算法实现
2.3.2线性表内容与线性表长度存储在一个结构体中的算法实现
2.3.3线性表中的元素是字符串的算法实现
2.4顺序表的查找
2.4.1顺序查找
2.4.2二分查找
2.4.3顺序查找与二分查找的效率分析
2.5插入与删除操作的效率分析
2.5.1 在顺序表的第i个位置(逻辑位置)插入一个元素
2.5.2插入算法的移动次数
2.6顺序表应用举例
2.7本章小结
习题2
第3章线性表的链式存储
3.1线性表的链式存储结构
3.1.1为什么要使用链式存储结构
3.1.2单链表的数据定义
3.2基于单链表的算法实现
3.2.1单链表的基本算法实现
3.2.2单链表中插入运算的进一步讨论
3.3单链表应用举例
3.4链式存储的其他方法
3.5基于带表头结点的单循环链表算法实现
3.5.1带表头结点的单循环链表的基本算法实现
3.5.2带表头结点的单循环链表的应用举例
3.5.3带表头结点与不带表头结点的单循环链表的比较
3.6双向链表基本算法实现
3.7顺序存储方式与链式存储方式的比较
3.8本章小结
习题3
第4章哈希表与索引表
4.1查找的基本概念
4.2哈希表
4.2.1哈希表的基本概念
4.2.2冲突的产生
4.2.3可以选择的哈希函数
4.2.4解决冲突的方法
4.2.5基本算法的实现
4.2.6哈希表存储方法的性能分析
4.2.7哈希表应用举例
4.3索引表
4.3.1索引表的构成
4.3.2索引表的查找
4.3.3分块查找
4.4各种查找算法的效率分析
4.5本章小结
习题4
……
第5章栈与队列
第6章内排序
第7章树与二叉树
第8章图
参考文献
书摘插图
第1章概述
1.1什么是数据结构
由于计算机所解决的问题都是从生活中抽象出来的问题,因此如何将生活中的问题用计算机来表达是程序设计者必须研究的问题,生活既有计算1+2这样简单的问题,也有走迷宫、下棋这样的复杂问题。
……