数据结构、算法与应用

作者:齐悦、夏克俭、姚琳

丛书名:21世纪计算机科学与技术实践型教程

定价:56元

印次:1-9

ISBN:9787302399766

出版日期:2015.05.01

印刷日期:2024.01.02

图书责编:谢琛

图书分类:教材

电子书
在线购买
分享
内容简介
作者简介
前言序言
资源下载
查看详情 查看详情 查看详情

本书系统地介绍了各种类型的数据结构、数据结构在计算机存储器中的表示以及相关的C语言描述算法。另外,对各类数据结构在实际中的应用做了较深入的介绍,包含示例分析及典型算法的C语言源程序。本书最后对算法设计的基础知识进行了讨论,拓展了知识面。每章后附有习题,便于读者进一步理解和巩固所学的知识。 本书可作为大专院校计算机专业或相关专业的教材,也可供从事计算机软件开发的工程技术人员参考。

齐悦,博士,2007年毕业于北京科技大学计算机系。长期从事计算机系统结构方向的研究与教学,主讲数据结构、面向对象程序设计、微机原理与应用、C++程序设计、C语言程序设计、大规模集成电路设计等课程。出版译著1部《计算机体系结构:嵌入式方法》,参编教材4部《C语言程序设计》、《C语言程序设计上机指导与习题解答》、《C++程序设计》、《C++程序设计上机指导与习题解答》。2013年获得北京科技大学“我爱我师”称号。�

数据结构是计算机科学的基础,计算机学科的许多领域都构建在这个基础之上。想要更好地从事计算机软件设计、实现、测试和维护等工作,掌握数据结构的知识是非常必要的。 数据结构研究的是计算机所处理数据元素之间的关系及其操作实现的算法。数据结构是计算机类专业的重要专业基础课,是算法设计的基础,不仅涉及计算机硬件(特别是编码理论、存储机制和存取方法等)的研究范围,而且和计算机软件的研究有着更密切的关系。本书介绍并探讨数据在计算机中的组织、算法设计、时间和空间效率的概念和通用分析方法,精选应用实例和习题,通过理论结合实际,加强学生解题能力和技巧的训练,以便学会分析研究数据对象的特性,学会数据的组织方法,掌握算法设计的基础知识,从而在程序设计中选择合适的数据结构及相应的算法,提高程序设计水平。 C语言是一种非常优秀的编程语言,包括操作系统在内的很多软件的设计与实现都采用了C语言,本书选用C语言来介绍数据结构算法的具体实现。 本书的第1章介绍数据结构的基本概念,包括数据结构研究的内容和方法、数据结构的含义、抽象数据类型的表示与实现、算法分析的基本知识。第2~5章讨论线性结构,其中第2章讨论线性结构相关知识及算法描述,包括线性表的定义及其基本操作、线性表的顺序存储结构、链式存储结构以及线性表的应用举例;第3章讨论两种操作受限的线性结构——栈和队列,包括栈和队列的定义及其基本操作、栈和队列的顺序存储结构、链式存储结构以及栈与队列的应用举例;第4章讨论对字符串的处理,包括串的定义及其操作、串的存储结构、串的模式匹配等算法以及串的应用举例;第5章的数组和广义表是线性结构的扩充,包括数组的定义及其操作...

课件下载

样章下载

暂无网络资源

扫描二维码
下载APP了解更多

目录
荐语
查看详情 查看详情
第1章绪论1

1.1数据结构研究的内容和方法1

1.1.1数据结构的含义1

1.1.2数据结构研究的内容2

1.1.3研究数据结构的方法6

1.2抽象数据类型的表示与实现7

1.3学习数据结构的目的8

1.3.1数据结构的发展简史及在计算机科学中的地位8

1.3.2学习数据结构的目的9

1.4算法和算法分析9

1.4.1算法的定义9

1.4.2算法的性质9

1.4.3算法的设计目标11

1.4.4算法效率的度量11

习题114

第2章线性表16

2.1线性表的定义及其基本操作16

2.1.1线性表的定义16

2.1.2线性表的逻辑结构和特征16

2.1.3线性表的抽象数据类型表示17

2.2线性表的顺序存储结构19

2.2.1顺序表20

2.2.2顺序表上的基本操作20

2.2.3顺序存储结构的基本特点23

2.3线性表的链式存储结构24

2.3.1单链表24

2.3.2单链表中的基本操作262.3.3单向循环链表31

2.3.4双向链表32

2.3.5静态链表34

2.3.6链式存储结构的特点37

2.4线性表应用举例38

2.4.1Josephu问题38

2.4.2一元多项式的表示与相加41

本章小结45

习题245

第3章栈与队列47

3.1栈47

3.1.1栈的定义及其操作47

3.1.2栈的顺序存储结构49

3.1.3栈的链式存储结构51

3.2栈应用举例52

3.2.1数制转换53

3.2.2行编辑处理54

3.2.3表达式求值56

3.3栈与递归函数61

3.3.1递归定义与...