图书介绍

C++类和数据结构PDF|Epub|txt|kindle电子书版本网盘下载

C++类和数据结构
  • (美)查尔兹(Childs 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302191797
  • 出版时间:2009
  • 标注页数:401页
  • 文件大小:18MB
  • 文件页数:420页
  • 主题词:C语言-程序设计;数据结构

PDF下载


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

下载说明

C++类和数据结构PDF格式电子书版下载

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

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

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

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

图书目录

第1章 结构和类1

1.1结构1

1.2类的基本概念6

1.3类的实现9

1.4类的测试17

1.5将函数定义放在类定义中18

1.6类的注释20

1.7结构和类之间的区别21

1.8小结21

1.9练习22

第2章 重载运算符、类模板和抽象25

2.1重载运算符25

2.2在Checkbook类中使用Check结构31

2.3类模板34

2.4类和抽象42

2.5小结45

2.6练习45

第3章 类的更多内容51

3.1 const限定符51

3.2构造函数53

3.3类的修改57

3.4修改Checkbook类保存支票历史记录57

3.5小结67

3.6练习68

第4章 指针和动态数组69

4.1指针69

4.2[]运算符75

4.3动态分配内存77

4.4动态数组79

4.5 delete操作符80

4.6对象指针83

4.7堆内存耗尽84

4.8可调数组86

4.9小结88

4.10练习89

第5章 Array类93

5.1 Array类模板93

5.2使用Array类103

5.3析构函数106

5.4复制构造函数107

5.5重载赋值运算符函数113

5.6示例118

5.7 Array类的优缺点121

5.8标准模板库122

5.9小结122

5.10练习123

第6章 面向对象编程简介125

6.1组合125

6.2继承129

6.3多态137

6.4小结144

6.5练习144

第7章 生成数据结构的方法147

7.1在数据结构中使用数组147

7.2链式结构简介151

7.3链表编码153

7.3.1链表代码基础153

7.3.2在链表中搜索一个肯定存在的值154

7.3.3在链表中搜索可能不存在的值157

7.3.4在链表的表头插入一个结点159

7.3.5在链表中间插入一个结点161

7.3.6从链表中删除一个包含链表中某个值的结点164

7.3.7使用header结点简化代码166

7.3.8删除找到包含某值的结点166

7.4数组和链表的对比167

7.4.1数组和链表在速度上的比较167

7.4.2数组和链表在内存浪费上的比较168

7.4.3浪费内存分析171

7.5小结174

7.6练习175

第8章 栈和队列177

8.1栈ADT177

8.2栈的数组实现178

8.3栈的链表实现184

8.4队列ADT184

8.5队列的链表实现184

8.6队列的其他链表实现193

8.7队列的数组实现194

8.8小结202

8.9练习202

第9章 时间复杂度简介211

9.1时间复杂度基础213

9.2常量阶时间复杂度222

9.3大O表示法223

9.4对数阶时间复杂度224

9.5折半搜索算法227

9.6计算机速度:它来源于什么地方231

9.7数据结构函数的时间复杂度232

9.8数组扩展和收缩的平摊分析232

9.9小结236

9.10练习237

第10章 链表作为数据结构239

10.1列表ADT239

10.2在信息记录中使用关键码值240

10.3链表实现240

10.3.1链表说明文件241

10.3.2链表实现文件244

10.4其他实现255

10.5小结259

10.6练习260

第11章 散列表263

11.1散列表ADT263

11.2散列函数和散列表设计263

11.3散列表的实现问题269

11.4函数指针271

11.5散列表实现272

11.6使用散列表实现277

11.7双向链表的散列表实现279

11.7.1实现问题283

11.7.2 DoublyLinkedList类的说明文件284

11.7.3 DoublyLinkedList类的实现文件287

11.8小结297

11.9练习297

第12章 优先级队列、树和堆299

12.1优先级队列ADT299

12.2优先级队列设计299

12.3树301

12.4堆306

12.5使用单赋值交换314

12.6优先级队列的堆实现(基于数组)316

12.7链(内嵌)堆设计324

12.8优先级队列的链(内嵌)堆实现329

12.9小结336

12.10练习337

第13章 递归339

13.1递归阶乘函数339

13.2递归函数编写原则344

13.3在链式结构上使用递归345

13.4递归函数的时间复杂度348

13.5小结348

13.6练习349

第14章 排序算法简介351

14.1堆排序351

14.2插入排序353

14.3快速排序358

14.4统计排序361

14.5链表排序364

14.6小结366

14.7练习367

第15章 其他数据结构369

15.1二叉搜索树369

15.2 BST和其他数据结构的对比380

15.3图382

15.4邻接矩阵和邻接表之间的对比391

15.5小结393

15.6练习394

附录A 如何编译及使用多文件程序397

A.1 Microsoft Visual Studio 2005 C++编译器397

A.2编译和运行使用类的代码(不是类模板)397

A.3编译和运行使用类模板的代码398

A.4使用Microsoft Visual Studio 2005编写代码399

A.5在Microsoft Visual Studio 2005中打开一个已创建的项目400

A.6何种情况下事情会变乱400

A.7 UNIX编译器401

热门推荐