全新正版 极速发货
¥ 38.25 6.5折 ¥ 59 全新
库存2件
作者霍利、董靓瑜、郑巍、李静
出版社清华大学出版社
ISBN9787302598213
出版时间2022-04
装帧平装
开本16开
定价59元
货号1202626819
上书时间2024-09-04
“数据结构与算法”是计算机科学与技术、软件工程及其相关专业的重要的专业基础课。计算机技术已经深入到各个专业领域并不断地迎接新需求和新发展的挑战。为了培养实践能力强、创新能力强的复合型新工科人才,“数据结构与算法”已经成为很多工科专业的热门选修课程。“数据结构与算法”所研究的理论知识和技术方法、体现的思维方式,无论对学习计算机学科的其他相关课程,还是对软件设计和开发工作,都具有不可替代的作用。
本书主要讨论数据处理过程中经常使用的三种经典结构(线性表、树、图)的逻辑结构及特点; 数据在计算机中常用的存储结构; 定义在逻辑结构上、实现在存储结构上的各种典型算法。针对常见的典型运算(排序和查找)设计了多种实现算法。本书是编者针对“数据结构与算法”课程的特点,并结合自己在实践教学中的经验编写的。具有如下特点:
· 理论与应用并重,抽象与实例结合。讲解详细、深入浅出,尤其在算法设计和难点内容的阐述方面有独到之处。通过通俗易懂的示例介绍,化解了数据结构与算法的抽象性,因而本书适应多方面、多层次读者的需求。
· 利用思维导图和学习目标,梳理和规划了各章学习内容,有利于引导初学者更好地入门。借助章末小结和本章重点,把所有的内容进行系统化和归纳总结,可以帮助读者掌握所学内容及课程的整个脉络。
· 力求与C语言无缝对接。鉴于目前“C语言程序设计”是理工科的必修课程,普及范围极广,全书采用C语言作为描述工具。书中所有的算法描述都是用规范的C函数并经过上机调试,运行通过,可以直接使用。
· 提供类型丰富和数量可观的课后习题,在帮助学生及时理解和消化所学知识的同时,也为课程结束的考核环节提供了较好的试题范例。
· 给出了经典结构的应用案例,对提高学生的理论联系实际能力、程序设计能力、综合应用知识能力有很大的帮助,同时对完成课程设计教学过程准备了参考资料。
全书共分为8章,第1章内容包括数据结构的概念及数据结构研究内容涉及的基本概念; 第2章和第3章详细介绍三种基本的线性结构,即线性表、栈和队列; 第4~6章详细介绍四种非线性结构,分别是多维数组、广义表、树和图; 第7章和第8章讨论数据处理过程中使用频率的两种典型运算——排序和查找。附录集中给出经典结构的典型应用程序。
书中标*的节作为选讲内容,可留给学生自己阅读。
本书的编者均为大连交通大学的教师,长期从事数据结构的教学和研究工作。本书是编者们多年教学经验的结晶。本书的编写分工如下: 第1~3章由郑巍编写; 第4章和第5章由董靓瑜编写; 第6章由李静编写; 第7章和第8章由霍利编写。霍利、董靓瑜负责全书的整体规划,并承担统稿工作。
本书在编写过程中参考了大量的资料,在此向相关作者一并表示感谢。
虽然全体参编人员都尽心尽力、力求完美,但由于水平有限,书中难免存在疏漏之处,敬请广大读者批评指正,不胜感谢。
编者
2022年2月
《数据结构与算法(C语言版)》详细介绍了数据处理过程中经常使用的经典结构,即线性表、树、图的逻辑结构、存储结构和基本运算。针对常见的典型运算——排序和查找设计了多种实现算法,采用C语言作为数据结构和算法的描述工具。全书共分为8章,包括绪论、线性表、栈和队列、多维数组和广义表、树、图、排序和查找。附录部分给出了经典结构的典型应用程序。 本书具有内容完整、思路清晰、示例丰富、讲解通俗易懂等特点,尤其在算法设计和难点内容的阐述方面有独到之处。 本书适合作为高等院校计算机、信息类学科本科生的教材,同时可供对数据结构和算法有所了解的开发人员、广大科技工作者和研究人员参考。
霍利,2004年至今任大连交通大学教师,系数据结构与算法课程的核心主讲教师,有10多年讲授数据结构的经验,主持并参与多项数据结构等课程的教改项目,多次以讲数据结构课程而获得教学优秀奖,已经参编多部数据结构相关的教材。
第1章绪论
1.1基本术语
1.2数据结构的研究内容
1.2.1数据的逻辑结构
1.2.2数据的存储结构
1.2.3数据的运算
1.3算法
1.3.1算法的定义及特性
1.3.2算法的描述
1.3.3算法的评价
1.4学习数据结构的意义和目的
小结
习题
第2章线性表
2.1线性表的定义及运算
2.1.1线性表的定义及逻辑特征
2.1.2线性表上运算的定义
2.1.3线性表的存储结构
2.2顺序表
2.2.1顺序表的定义及表示
2.2.2顺序表上基本运算的实现
2.3链表
2.3.1链表的定义
2.3.2单链表
2.3.3循环链表
2.3.4双链表
*2.3.5静态链表
2.4顺序表和链表的比较
小结
习题
第3章栈和队列
3.1栈
3.1.1栈的定义及运算
3.1.2顺序栈及运算的算法实现
3.1.3链栈及运算的算法实现
3.1.4栈的应用
3.1.5栈与递归
3.2队列
3.2.1队列的定义及运算
3.2.2顺序队列及运算的实现
3.2.3链队列及运算的实现
3.3栈与队列的比较
小结
习题
第4章多维数组和广义表
4.1多维数组
4.2矩阵的压缩存储
4.2.1特殊矩阵
4.2.2稀疏矩阵
4.3广义表
4.3.1广义表的定义
4.3.2广义表的运算
小结
习题
第5章树
5.1树的逻辑结构
5.2二叉树
5.2.1二叉树的定义及性质
5.2.2二叉树上运算的定义
5.2.3二叉树的存储
5.2.4二叉树遍历运算的算法实现
5.3线索二叉树
5.3.1中序线索二叉链表
5.3.2利用中序线索进行中序遍历的算法实现
5.3.3利用中序线索进行前序和后序遍历的算法实现
5.4哈夫曼树
5.4.1哈夫曼树的定义及建立
5.4.2哈夫曼编码及译码
5.5树和森林
5.5.1树和森林的遍历定义
5.5.2森林与二叉树的相互转换
*5.5.3树的存储
小结
习题
第6章图
6.1图的逻辑结构
6.2图的存储结构及实现
6.2.1邻接矩阵
6.2.2邻接表
6.2.3边集数组
6.2.4图的各种存储结构的比较
6.3图的遍历
6.3.1深度优先搜索算法与实现
6.3.2广度优先搜索算法与实现
6.3.3非连通图的遍历
6.4图的经典应用——小生成树
6.4.1Prim算法
6.4.2Kruskal算法
6.5图的经典应用——短路径
6.5.1单源短路径
6.5.2任意两点间短路径
6.6图的经典应用——拓扑排序
*6.7图的经典应用——关键路径
小结
习题
第7章排序
7.1排序的相关概念
7.2插入排序
7.2.1直接插入排序
7.2.2希尔排序
7.3交换排序
7.3.1起泡排序
7.3.2快速排序
7.4选择排序
7.4.1直接选择排序
7.4.2堆排序
7.5归并排序
*7.6基数排序
7.7排序方法的比较
小结
习题
第8章查找
8.1查找的相关概念
8.2顺序表查找
8.2.1顺序查找
8.2.2二分法查找
8.3索引查找
8.3.1索引表的组织
8.3.2分块查找
8.4树表查找
8.4.1二叉排序树
*8.4.2平衡二叉树
*8.4.3B树
8.5散列查找
8.5.1散列表的概念
8.5.2散列函数的设计
8.5.3解决冲突的方法
8.5.4散列表的特点
小结
习题
附录A经典结构的典型应用程序
A.1顺序表的应用
A.2单链表的应用
A.3二叉链表的应用
A.4图的遍历程序举例
A.5散列表的应用举例
参考文献
(1)理论与应用并重,抽象与实例结合。讲解详细、深入浅出,尤其在算法设计和难点内容的叙述方面有独到之处。通过通俗易懂的示例介绍,化解了数据结构与算法的抽象性,因而《数据结构与算法(C语言版)》适应多方面、多层次读者的需求。 (2)利用思维导图和学习目标,梳理和规划了各章学习内容,有利于引导初学者更好地入门。借助章末小结和本章重点,把所有的内容进行系统化和归纳总结,可以帮助读者掌握所学内容及课程的整个脉络。 (3)力求与C语言无缝对接。鉴于目前“C语言程序设计”是理工科必修课程,普及范围极广,全书采用C语言作为数据结构和算法的描述工具。书中所有的算法描述都是规范的C函数并经过上机调试,运行通过,可以直接使用。 (4)提供类型丰富和数量可观的课后习题,在帮助学生及时理解和消化所学知识的同时,也为课程结束的考核环节提供了较好的试题范例。 (5)书中给出了经典结构的应用案例,对提高学生的理论联系实际能力、程序设计能力、综合应用知识的能力有很大的帮助,同时对完成课程设计教学过程准备了参考资料。
— 没有更多了 —
以下为对购买帮助不大的评价