图书介绍

数据结构(C++C版)2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

数据结构(C++C版)
  • 叶核亚编著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121080043
  • 出版时间:2009
  • 标注页数:312页
  • 文件大小:64MB
  • 文件页数:323页
  • 主题词:数据结构-高等学校-教材;C语言-程序设计-高等学校-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

数据结构(C++C版)PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 绪论1

1.1 数据结构的基本概念1

1.1.1 为什么要学习数据结构1

1.1.2 什么是数据结构1

1.1.3 数据类型与抽象数据类型5

1.2 算法7

1.2.1 什么是算法7

1.2.2 算法分析9

1.2.3 算法设计11

习题118

实验1 算法设计与分析18

第2章 线性表21

2.1 线性表抽象数据类型21

2.2 线性表的顺序表示和实现21

2.3 线性表的链式表示和实现29

2.3.1 线性表的链式存储结构29

2.3.2 单链表30

2.3.3 双链表44

习题249

实验2 线性表顺序存储结构和链式存储结构的基本操作50

第3章 串52

3.1 串抽象数据类型52

3.1.1 串的基本概念52

3.1.2 串抽象数据类型53

3.2 串的表示和实现53

3.2.1 串的存储结构53

3.2.2 字符串类54

3.3 串的模式匹配60

3.3.1 朴素的模式匹配(Brute-Force)算法61

3.3.2 无回溯的模式匹配(KMP)算法64

习题369

实验3 串的基本操作及模式匹配算法70

第4章 栈和队列72

4.1 栈72

4.1.1 栈抽象数据类型72

4.1.2 顺序栈73

4.1.3 链式栈74

4.1.4 栈的应用76

4.2 队列82

4.2.1 队列抽象数据类型82

4.2.2 顺序队列82

4.2.3 链式队列85

4.2.4 队列的应用86

4.3 优先队列88

4.4 递归90

习题494

实验4 栈和队列以及递归算法95

第5章 数组和广义表97

5.1 数组97

5.1.1 一维数组97

5.1.2 多维数组98

5.2 特殊矩阵的压缩存储104

5.2.1 对称(三角)矩阵的存储104

5.2.2 稀疏矩阵的压缩存储108

5.3 广义表116

5.3.1 广义表抽象数据类型116

5.3.2 广义表的存储结构118

习题5119

实验5 矩阵的存储和运算120

第6章 树和二叉树122

6.1 树及其抽象数据类型122

6.1.1 树的定义122

6.1.2 树的术语123

6.1.3 树的表示法124

6.1.4 树抽象数据类型124

6.2 二叉树及其抽象数据类型125

6.2.1 二叉树定义125

6.2.2 二叉树的性质125

6.2.3 二叉树的遍历规则127

6.2.4 二叉树抽象数据类型128

6.3 二叉树的表示和实现128

6.3.1 二叉树的存储结构128

6.3.2 二叉树的二叉链表实现130

6.4 线索二叉树147

6.4.1 线索二叉树定义148

6.4.2 中序线索二叉树149

6.5 哈夫曼编码与哈夫曼树154

6.5.1 哈夫曼编码155

6.5.2 哈夫曼树155

6.6 树的表示和实现162

6.6.1 树的存储结构162

6.6.2 树的孩子兄弟链表实现164

习题6167

实验6 树和二叉树的基本操作168

第7章 图171

7.1 图及其抽象数据类型171

7.1.1 图的基本概念171

7.1.2 图抽象数据类型174

7.2 图的表示和实现175

7.2.1 图的邻接矩阵表示175

7.2.2 图的邻接表表示182

7.2.3 图的邻接多重表表示189

7.3 图的遍历190

7.3.1 图的深度优先搜索遍历191

7.3.2 图的广度优先搜索遍历194

7.4 最小生成树196

7.4.1 生成树196

7.4.2 最小生成树的构造算法198

7.5 最短路径202

7.5.1 非负权值的单源最短路径202

7.5.2 每对顶点间的最短路径206

习题7209

实验7 图的表示和操作209

第8章 查找211

8.1 查找的基本概念211

8.2 基于线性表的查找212

8.2.1 顺序查找213

8.2.2 基于有序顺序表的折半查找215

8.2.3 基于索引顺序表的分块查找217

8.3 散列222

8.3.1 散列表222

8.3.2 散列函数224

8.3.3 处理冲突224

8.3.4 链地址法的散列表226

8.4 二叉排序树和平衡二叉树228

8.4.1 二叉排序树及其查找229

8.4.2 平衡二叉树235

习题8238

实验8 查找算法及其效率分析239

第9章 排序240

9.1 排序的基本概念240

9.2 插入排序241

9.2.1 顺序查找241

9.2.2 希尔排序243

9.3 交换排序245

9.3.1 冒泡排序245

9.3.2 快速排序246

9.4 选择排序248

9.4.1 直接选择排序248

9.4.2 堆排序251

9.5 归并排序254

习题9258

实验9 排序算法设计及分析258

第10章 综合应用设计260

10.1 算法分析260

10.1.1 时间代价分析260

10.1.2 空间代价分析260

10.2 算法设计策略261

10.2.1 分治法261

10.2.2 动态规划法263

10.2.3 贪心法266

10.2.4 回溯法272

10.3 课程设计的目的、要求和选题285

第11章 Visual C++集成开发环境292

11.1 Visual C++ 6.0集成开发环境292

11.2 编辑、编译和运行C++程序294

11.2.1 新建、编辑、编译和运行一个C++程序294

11.2.2 一个项目包含头文件和C++程序296

11.2.3 一个工作区包含多个项目299

11.3 程序调试技术300

11.3.1 程序错误、发现时刻及错误处理原则300

11.3.2 程序运行方式301

11.3.3 调试界面302

11.3.4 调试过程303

附录A ASCII码表(前128个)308

附录B 运算符及其优先级309

附录C Visual C++ 6.0常用菜单命令及说明310

参考文献312

热门推荐