当前位置:首页 > 工业技术
C/C++与数据结构  第2版
C/C++与数据结构  第2版

C/C++与数据结构 第2版PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:王立柱编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2003
  • ISBN:7894940941
  • 页数:403 页
图书介绍:本书内容包括机器语言程序简介、C语言基础、数据结构概论、顺序表、顺序队列、顺序栈、字符串、链表、链队列、二叉树、树、图、C++程序、C++的I/O流库等14章。
《C/C++与数据结构 第2版》目录

第1章 机器语言程序简介 1

1.1 电子计算机的基本组成及其工作过程 1

1.2 机器语言程序设计 3

1.3 子程序调用过程 6

习题 8

第2章 C 语言基础 9

2.1 基本类型变量和指针 9

2.2 基本类型 14

2.2.1 整型 14

2.2.2 字符型 15

2.2.5 不同类型数据的混合运算 18

2.2.4 指针类型(地址类型) 18

2.2.3 实型 18

2.2.6 强制类型转换 19

2.2.7 混合赋值和复合的赋值运算符 19

2.3 一维数组和指针 21

2.3.1 一维数组 21

2.3.2 指针 23

2.3.3 一维数组和指针变量的比较 25

2.3.4 void 指针 27

2.4 二维数组和指针 27

2.4.1 二维数组和二维指针 27

2.4.2 二维数组和一维指针 30

2.4.3 指针数组和指针的指针 31

2.5.1 结构变量 34

2.5 结构和指针 34

2.5.2 结构指针和数组 36

2.6 枚举类型 39

2.7 类型名选择 40

2.8 条件表达式与控制语句 41

2.8.1 关系运算 41

2.8.2 逻辑运算 42

2.8.3 条件控制语句 43

2.8.4 循环控制语句 48

2.8.5 break 语句和 continue 语句 52

2.8.6 逗号运算符 52

2.9 函数 53

2.9.1 函数与指针 53

2.9.2 函数调用与变量的存储类别 59

2.9.3 动态单元的分配和释放 66

2.10 指针参量 69

2.11 输入输出函数 72

2.11.1 printf 函数 72

2.11.2 scanf 函数 74

2.11.3 getchar 函数和 putchar 函数 77

2.12 编译预处理 78

2.12.1 文件包含处理 78

2.12.2 无参宏定义 80

2.12.3 带参宏定义 82

2.12.4 条件编译 84

2.13 流与文件 86

2.13.1 流与文件概述 86

2.13.2 文件打开关闭函数 87

2.13.3 无格式读写函数 89

2.13.4 字符读写函数 91

2.13.5 字符串读写函数 93

2.13.6 其他常用写函数 95

2.13.7 文件复制 97

2.14 初始化与赋值 98

2.15 程序设计综合举例 102

2.15.1 起泡排序 102

2.15.2 删除重复数据 104

2.15.3 数制转换 105

2.15.4 回文 105

2.15.5 约瑟夫问题(Josephus) 106

2.15.6 划分数组元素 108

2.15.7 模拟人工洗牌 109

2.15.8 三天打鱼两天晒网 110

2.15.9 筛法求素数 111

2.15.10 保序插入 112

2.15.11 折半查找 113

2.15.12 打印年历 113

习题 114

第3章 数据结构概论 117

3.1 数据结构和数据类型 117

3.2 算法和程序 120

3.3 算法分析 123

习题 126

第4章 顺序表 127

习题 134

第5章 顺序队列 135

5.1 顺序队列的定义 135

5.2 队列与文件 140

习题 141

第6章 顺序栈 142

6.1 顺序栈的定义 142

6.2 中缀表达式求值 146

习题 152

第7章 字符串 153

7.1 C 语言串 153

7.2 新类型串 157

习题 167

第8章 链表 168

8.1 单向链式存储结构 168

8.2 单向链表 174

8.3 双向链式存储结构 178

8.4 双向链表 183

习题 187

第9章 链队列 188

9.1 链队列的定义 188

9.2 事件驱动模拟 190

习题 200

第10章 二叉树 201

10.1 二叉树的概念和性质 201

10.1.1 树和二叉树的概念 201

10.1.2 二叉树的性质 202

10.2.1 顺序存储结构 203

10.2 二叉树的存储 203

10.2.2 链式存储结构 205

10.3 二叉树层次遍历 206

10.3.1 层次遍历 206

10.3.2 建立二叉链表 208

10.3.3 垂直输出二叉树 209

10.4 二叉树的前序遍历 213

10.4.1 前序遍历 213

10.4.2 求二叉树从根至叶子的所有路径 215

10.4.3 求集合的幂集 218

10.4.4 快速排序 221

10.5.1 汉诺塔问题 224

10.5 二叉树中序遍历 224

10.5.2 由前序和中序序列建立二叉链表 226

10.6 二叉树后序遍历 228

10.7 递归评估 230

10.8 递归遍历的模拟 232

10.8.1 递归前序遍历的模拟 232

10.8.2 递归中序遍历的模拟 236

10.8.3 递归后序遍历的模拟 238

10.9 堆 241

10.10 哈夫曼树 248

10.10.1 哈夫曼树的定义 248

10.10.2 建立哈夫曼树 249

10.10.3 哈夫曼编码 251

10.11 二叉搜索树 252

10.12 平衡二叉搜索树 259

10.13 线索二叉树 266

习题 270

第11章 树 272

11.1 树的存储与遍历 272

11.1.1 树的存储 272

11.1.2 树的层次遍历 276

11.1.3 树的前序遍历 278

11.1.4 树的后序遍历 283

11.2 八皇后问题 285

11.3.1 图形系统初始化 289

11.3 八皇后解的图形输出 289

11.3.2 图形设计与实现 290

习题 298

第12章 图 299

12.1 图的概念和存储 299

12.1.1 图的概念 299

12.1.2 邻接矩阵表示法 300

12.1.3 邻接表表示法 304

12.2 图的遍历 305

12.2.1 广度遍历 305

12.2.2 深度遍历 307

12.3 最小生成树 309

12.4 单源最短路径 314

12.5 拓扑排序 319

12.6 关键路径 322

12.7 迷宫求解 326

12.8 骑士巡游和汉密尔顿路 332

习题 335

第13章 C++程序 336

13.1 C++对 C 的基本扩充 336

13.1.1 注释和输入输出语句 336

13.1.2 作用域说明 337

13.1.3 默认函数 338

13.1.4 引用 338

13.1.5 常量修饰符 const 340

13.1.6 内存的动态申请和释放 341

13.2.1 类和对象 342

13.2 C++的基本要素 342

13.2.2 this 指针 347

13.2.3 友元 348

13.2.4 外部运算符重载 350

13.2.5 初始化与赋值 351

13.3 重载 354

13.3.1 函数重载 354

13.3.2 成员和友元运算符重载 358

13.4 形式数据类型 362

13.4.1 模板函数 363

13.4.2 模板类 364

13.4.3 中缀表达式求值 367

13.5.1 继承 369

13.5 继承和抽象类 369

13.5.2 派生类中的构造函数和析构函数 373

13.5.3 虚函数 375

13.5.4 纯虚函数和抽象类 379

习题 381

第14章 C++的 I/O 流库 382

14.1 屏幕输出 382

14.1.1 预定义的插入符 382

14.1.2 成员函数 put 384

14.1.3 成员函数 write 385

14.2 键盘输入 385

14.2.1 预定义的提取符 385

14.2.2 成员函数 get,getline 387

14.3 插入符和提取符的重载 389

14.2.3 成员函数 read 389

14.4 格式化输入输出 390

14.4.1 设置流的格式化标志 390

14.4.2 格式输出函数 392

14.4.3 操作子 393

14.5 文件 394

14.5.1 文件的打开关闭函数 394

14.5.2 无格式读写函数 396

14.5.3 字符读写函数 397

14.5.4 字符串读写函数 398

14.5.5 随机访问 400

14.5.6 文件错误处理 401

参考文献 403

相关图书
作者其它书籍
返回顶部