当前位置:首页 > 工业技术
C++数据结构与程序设计
C++数据结构与程序设计

C++数据结构与程序设计PDF电子书下载

工业技术

  • 电子书积分:17 积分如何计算积分?
  • 作 者:(美)克鲁斯(Kruse R.L.),瑞贝(Ryba A.J.)著;钱丽萍译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2004
  • ISBN:7302078041
  • 页数:581 页
图书介绍:本书结合面向对象程序设计和C++强大的特性,构建数据结构的基本思想,设计了程序和有趣的应用。在此过程中,本书探讨了作为软件设计基本工具的问题求解和设计原理、数据抽象、递归和算法的比较分析。本书使用真实的案例研究、可重用的软件开发和程序设计项目来增强理解。本书内容详尽且配有大量的实例和习题。书中所有算法都做了详细的注解,有利于读者理解算法的实质和编程思想。本书既可作为高等学校计算机及相关专业学生的教材,亦可供计算机应用领域的工程技术人员参考,尤其适合于应用C++编程的科技人员。
《C++数据结构与程序设计》目录

第1章 程序设计原理 1

1.1 简介 1

目录 1

1.2 Life游戏 3

1.3 程序设计风格 9

1.4 编码、测试和进一步细化 17

1.5 程序维护 29

1.6 结论和复习 34

复习题 39

启示和易犯的错误 39

进阶参考书目 40

第2章 栈 43

2.1 栈说明 43

2.2 栈的实现 49

2.3 应用:桌面计算器 57

2.4 应用:括号的匹配 60

2.5 抽象数据类型及其实现 61

启示和易犯的错误 65

进阶参考书目 66

复习题 66

第3章 队列 67

3.1 定义 67

3.2 队列的实现 72

3.3 C++队列的循环实现 75

3.4 演示和测试 78

3.5 队列的应用:模拟 81

启示和易犯的错误 93

复习题 93

进阶参考书目 94

第4章 链栈和链式队列 95

4.1 指针和链式结构 95

4.2 链栈 107

4.3 带保护的链栈 110

4.4 链式队列 115

4.5 应用:多项式运算 119

4.6 抽象数据类型及其实现 128

启示和易犯的错误 130

复习题 130

5.1 递归导言 132

第5章 递归 132

5.2 递归的原理 142

5.3 回溯法:延缓工作 153

5.4 树结构的程序:在游戏中预测 165

启示和易犯的错误 174

复习题 175

进阶参考书目 176

第6章 表和字符串 177

6.1 表的定义 177

6.2 表的实现 181

6.3 字符串 194

6.4 应用:文本编辑器 201

6.5 数组链表 208

6.6 应用:生成排列 216

启示和易犯的错误 220

复习题 221

进阶参考书目 221

第7章 查找 222

7.1 查找:引言和符号 222

7.2 顺序查找 224

7.3 二分查找 229

7.4 比较树 236

7.5 下限 246

7.6 渐近 250

启示和易犯的错误 260

复习题 260

进阶参考书目 261

8.1 引言和符号 262

第8章 排序 262

8.2 插入排序 264

8.3 选择排序 272

8.4 希尔排序 275

8.5 下限 278

8.6 分而治之排序 281

8.7 链表的归并排序 285

8.8 顺序表的快速排序 292

8.9 堆和堆排序 301

8.10 复习:方法比较 308

启示和易犯的错误 311

复习题 312

进阶参考书目 312

第9章 表格和信息检索 314

9.1 引言:突破lgn的障碍 314

9.2 矩形表格 315

9.3 各种形态的表格 317

9.4 表格:一种新的抽象数据类型 321

9.5 应用:基数排序 324

9.6 哈希法 329

9.7 关于哈希的分析 340

9.8 结论:方法的比较 345

9.9 应用:再访Life游戏 346

启示和易犯的错误 353

复习题 354

进阶参考书目 354

第10章 二叉树 356

10.1 二叉树 356

10.2 二叉查找树 368

10.3 建立二叉查找树 384

10.4 高度平衡:AVL树 392

10.5 伸展树:自我调节的数据结构 407

启示和易犯的错误 428

复习题 429

进阶参考书目 430

第11章 多路树 432

11.1 果园、树和二叉树 432

11.2 词典查找树:trie 439

11.3 外部查找:B-树 444

11.4 红-黑树 462

启示和易犯的错误 471

复习题 472

进阶参考书目 472

第12章 图 474

12.1 数学背景 474

12.2 计算机表示 476

12.3 图的遍历 480

12.4 拓扑排序 482

12.5 贪心算法:最短路径 486

12.6 最小生成树 490

12.7 图作为数据结构 496

启示和易犯的错误 498

复习题 498

进阶参考书目 498

第13章 案例研究:波兰表示法 500

13.1 问题 500

13.2 思想 502

13.3 波兰表达式的求值 505

13.4 从中缀式到波兰形式的转换 515

13.5 一个交互式的表达式求值程序 520

进阶参考书目 539

附录A 数学方法 540

A.1 整数幂的和 540

A.2 对数 542

A.3 排列、组合和阶乘 548

A.4 斐波纳契数 550

A. Catalan数 552

进阶参考书目 555

B.2 策略 557

附录B 随机数 557

B.1 介绍 557

B.3 程序设计 558

进阶参考书目 562

附录C 软件包和实用函数 563

C.1 软件包和C++转换单元 563

C.2 课文中的软件包 564

C.3 实用程序软件包 566

C.4 计时方法 567

D.1 数据结构和算法的选择 569

附录D 程序设计规则、启示和易犯的错误 569

D.2 递归 572

D.3 数据结构的设计 572

D.4 算法设计和分析 573

D.5 程序设计 574

D.6 用指针对象进行程序设计 575

D.7 调试和测试 576

D.8 维护 576

术语表 578

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