新書推薦:
《
封建社会农民战争问题导论(光启文库)
》
售價:NT$
296.0
《
虚弱的反攻:开禧北伐
》
售價:NT$
429.0
《
泰山:一种中国信仰专论(法国汉学经典译丛)
》
售價:NT$
380.0
《
花外集斠箋
》
售價:NT$
704.0
《
有兽焉.8
》
售價:NT$
305.0
《
大学问·明清经济史讲稿
》
售價:NT$
330.0
《
中国国际法年刊(2023)
》
售價:NT$
539.0
《
早点知道会幸福的那些事
》
售價:NT$
295.0
|
編輯推薦: |
中国轻工业“十四五”规划教材。
通过丰富的图表和实例、完整的代码帮助读者理解算法思想,学会运用数据结构知识解决日常工作生活中的实际问题并能用算法实现。
提供了涵盖所有知识点的综合应用实例,课后习题题型多样,所涵盖的知识点丰富,选取了部分考研试题,以巩固所学知识点。
配套提供电子课件、微课视频、习题答案、教学大纲、源代码、试卷。
|
內容簡介: |
本书共8章,内容包括绪论,线性表,栈与队列,串、数组与广义表,树和二叉树,图,查找,排序。全书采用C语言作为数据结构和算法的描述语言。本书内容编排符合当前高等院校“数据结构”课程的现状和发展趋势,知识点涵盖全面,案例和课后习题丰富,每章均有案例以巩固读者对知识点的掌握,突出实用性和实践性。
本书可作为高等院校计算机科学与技术、软件工程等相关专业“数据结构”课程的教材,也可作为从事计算机软件开发、准备考取计算机专业研究生和参加计算机软件与技术资格考试人员的参考用书。
|
關於作者: |
张建伟,工学博士,二级教授、博士生导师\\硕士生导师。河南省“食品安全数据智能”重点实验室主任、河南省“公共安全数据融合与智能服务”工程技术研究中心主任、国家级职业教育教师创新团队负责人,河南省政府特殊津贴获得者、河南省优秀专家、中原科技创新领军人才。长期在新一代网络,人工智能,网络安全领域开展深入研究,主持国家自科基金面上项目、省重点研发专项、中原科技创新领军人才项目、中央财政专项、省科技创新杰出人才/杰出青年等省部级以上项目10余项;获河南省科学技术进步奖一等奖1项、二等奖3项;发表高质量学术论文50余篇;参编著作和教材10余部;授权发明专利10余项。近年来带领团队针对网络内容分发效率低、用户群体移动性感知精确度低等关键技术难题,核心研究成果获得2021年度省科技进步一等奖。
|
目錄:
|
前言
第1章绪论
11数据结构的基本概念
12抽象数据类型
121抽象数据类型的定义
122抽象数据类型的描述
13数据的逻辑结构与存储结构
131逻辑结构
132存储结构
14算法的特性与算法的描述
141算法的定义
142算法的特性
143算法的描述
15算法分析
151算法设计的要求
152算法时间复杂度
153算法空间复杂度
16关于数据结构课程的地位及学习方法
习题
第2章线性表
21线性表的概念及运算
211线性表的逻辑结构
212线性表的抽象数据类型
22线性表的顺序表示与实现
221线性表的顺序存储
222顺序表的基本运算
223基本操作算法分析
224顺序表的应用举例
23线性表的链式表示与实现
231单链表的存储结构
232单链表上的基本运算
233单链表的应用举例
234循环单链表
235双向链表
24线性表应用举例:一元多项式的表示与相乘
241一元多项式的表示
242一元多项式相乘
25小结
习题
第3章栈与队列
31栈的表示与实现
311栈的定义
312栈的抽象数据类型
313顺序栈
314链栈
32栈的应用
321数制转换
322行编辑程序
323算术表达式求值
33栈的递归
331递归
332消除递归
34队列的表示与实现
341队列的定义
342队列的抽象数据类型
343顺序队列
344顺序循环队列
345双端队列*
346链式队列
35队列的应用
351队列在杨辉三角中的应用
352队列在回文中的应用
36小结
习题
第4章串、数组与广义表
41串的定义和抽象数据类型
411串的定义
412串的抽象数据类型
413串的表示与实现
414串的模式匹配
42数组
421数组的定义
422数组的抽象数据类型
423数组的顺序表示与实现
424特殊矩阵的压缩存储
425稀疏矩阵的压缩存储
426稀疏矩阵的应用举例
43广义表
431广义表的定义
432广义表的抽象数据类型
433广义表的存储表示
434广义表的应用举例
44小结
习题
第5章树和二叉树
51树的定义和抽象数据类型
511树的定义
512树的逻辑表示
513树的抽象数据类型
52二叉树
521二叉树的定义
522二叉树的性质
523二叉树的抽象数据类型
524二叉树的存储表示
53二叉树的遍历及应用
531二叉树遍历的定义
532二叉树的先序遍历
533二叉树的中序遍历
534二叉树的后序遍历
535二叉树的应用举例
54二叉树的线索化
541二叉树的线索化定义
542二叉树的线索化
543线索二叉树的遍历
544线索二叉树的应用举例
55树、森林与二叉树
551树的存储结构
552树转换为二叉树
553森林转换为二叉树
554二叉树转换为树和森林
555树和森林的遍历
56并查集
561并查集的定义
562并查集的实现
563并查集的应用举例
57综合应用举例:哈夫曼树
571哈夫曼树的定义
572哈夫曼编码
573哈夫曼编码算法的实现
58小结
习题
第6章图
61图的定义与相关概念
611图的定义
612图的相关概念
613图的抽象数据类型
62图的存储结构
621邻接矩阵表示法
622邻接表表示法
623十字链表表示法
624邻接多重表表示法
63图的遍历
631图的深度优先遍历
632图的广度优先遍历
64图的连通性问题
641无向图的连通分量与生成树
642最小生成树
65有向无环图
651AOV网与拓扑排序
652AOE网与关键路径
66最短路径
661从某个顶点到其余各顶点的最短路径
662每一对顶点之间的最短路径
67图的应用举例
671求图中距离某个顶点的最短路径长度为k的所有顶点
672求图中顶点u到顶点v的简单路径
68小结
习题
第7章查找
71查找的基本概念
72静态查找
721顺序表的查找
722有序顺序表的查找
723索引顺序表的查找
73动态查找
731二叉排序树
732平衡二叉树
733红黑树
74B-树与B 树
741B-树
742B 树
75哈希表
751哈希表的定义
752哈希函数的构造方法
753处理冲突的方法
754哈希表查找与分析
755哈希表的应用举例
76小结
习题
第8章排序
81排序的基本概念
82插入排序
821直接插入排序
822折半插入排序
823希尔排序
824插入排序的应用举例
83选择排序
831简单选择排序
832堆排序
84交换排序
841冒泡排序
842快速排序
843交换排序的应用举例
85归并排序
86基数排序
861基数排序算法
862基数排序的应用举例
87外排序
871外排序基本思想
872生成初始归并段
873处理归并段形成有序文件
88小结
习题
参考文献
|
內容試閱:
|
“数据结构”是高等院校计算机科学与技术、软件工程等相关专业的一门重要的专业基础课程,也是研究计算机科学与工程问题的基础,它对软件设计的发展起着举足轻重的作用。当用计算机来解决实际问题时,会涉及数据与数据之间关系的表示与处理,而这正是数据结构研究的对象。通过对数据结构的学习,读者可为后续课程,特别是算法设计和软件开发等课程的学习打下坚实的基础。
本书较系统地介绍了数据结构中的线性结构、树形结构、图结构及查找、排序技术,阐述了各种数据结构的逻辑关系,讨论了它们在计算机中的存储表示及其运算。本书理论与技术并重,结合工作实际对数据结构中的抽象概念和知识点进行详细讲解,通过丰富的图表和实例、完整的代码帮助读者理解算法思想,学会运用数据结构知识解决日常工作生活中的实际问题并能用算法实现。本书选取的案例丰富、典型,多数章节提供了涵盖所有知识点的综合应用实例,课后习题题型多样,所涵盖的知识点丰富,选取了部分考研试题,以巩固所学知识点。全书采用C语言作为描述语言,并配有详细的讲解和注释,所有代码均已上机调试通过,并给出程序的运行结果。
在第1版的基础上,结合现行《硕士研究生入学考试大纲》要求及对近年考研试题的分析,增加了并查集、红黑树、外排序等内容。由于篇幅所限,有些内容无法展开讲解,因此删除了静态链表、堆串、链串、十字链表的基本操作等内容。更多的算法实现内容,感兴趣的读者可以参阅《数据结构与算法详解》。
本书共8章,分别为绪论,线性表,栈与队列,串、数组与广义表,树和二叉树,图,查找,排序。
第1章:如果读者刚接触数据结构,这一章将介绍数据结构是什么,以及本书的学习目标、学习方法和学习内容。另外,还介绍了本书对算法的描述方法。
第2章:主要介绍线性表。首先讲解线性表的逻辑结构,然后介绍线性表的各种常用存储结构。
第3章:主要介绍操作受限的线性表——栈与队列,内容包括栈的定义、栈的基本操作及栈与递归的转化、队列的概念、顺序队列和链式队列的运算。
第4章:主要介绍特殊的线性表——串、数组与广义表。首先介绍串的概念、串的各种存储表示,以及串的模式匹配算法;然后介绍数组的概念、数组(矩阵)的存储结构、特殊矩阵;最后介绍广义表的概念、广义表的两种存储方式、广义表的操作实现。
第5章:主要介绍非线性数据结构——树和二叉树。首先介绍树和二叉树的概念,然后介绍树和二叉树的存储表示,二叉树的性质,二叉树的遍历和线索化,并查集,树、森林与二叉树的转换及哈夫曼树。
第6章:主要介绍非线性数据结构——图。首先介绍图的概念和存储结构,然后介绍图的遍历、最小生成树、拓扑排序、关键路径及最短路径。
第7章:主要介绍数据结构的常用技术——查找。首先介绍查找的概念,然后结合具体实例介绍各种查找算法,包括顺序表查找、有序顺序表查找、索引顺序表查找、二叉排序树、平衡二叉树、红黑树、B-树、B 树及哈希表。
第8章:主要介绍数据结构的常用技术——排序。首先介绍排序的相关概念,然后介绍各种排序技术,并给出了具体实现算法。最后介绍了外排序技术。
本书提供配套的教学资源,包括电子课件、例题源代码、课后习题答案等。读者可通过机械工业出版社教育服务网下载,也可与作者联系索取。
参与本书编写的有张建伟、陈锐、马军霞、马欢、谷培培、张亚洲、张晓梅、蒋昌猛。张建伟负责统稿,耿国华负责审定全书。
在本书的出版过程中,得到了郑州轻工业大学、山西大学和机械工业出版社的大力支持,在此表示衷心感谢。
在本书编写的过程中,作者参阅了大量相关教材、著作,个别案例也参考了网络资源,在此向各位原著者致敬!
由于作者水平有限,书中难免存在一些不足之处,恳请读者批评指正。
|
|