《高级程序设计技术》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:曾凡仔,杜四春,银红霞等编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2009
  • ISBN:9787115214560
  • 页数:329 页
图书介绍:本书详细介绍了程序设计的过程,深入解释函数和指针、模板与多态等高级内容;接着讲述最基本的栈、队列和树以及高级树和图等各类不同的数据结构主题,详细地介绍了搜索和排序算法;并结合计算机科学和应用的不同领域中的例子加深对相关知识的理解。

第1章C++语言概述 1

1.1 C++语言的起源与特点 1

1.1.1从C到C++ 1

1.1.2 C++与C的关系 1

1.1.3 C++面向对象的特性 2

1.2 C++语言的基本符号与词法 3

1.2.1 C++的字符集 3

1.2.2数据类型概述 4

1.2.3常量 6

1.2.4变量 9

1.2.5运算符 11

1.2.6表达式 17

1.2.7数据类型转换 18

1.3 C++语言程序的结构 19

1.3.1顺序结构 19

1.3.2选择结构 25

1.3.3循环结构 31

1.3.4转移语句 35

1.4 C++语言程序的编辑及运行 38

1.4.1 Linux程序设计基础知识 38

1.4.2 Linux下C++语言编程环境概述 40

1.4.3 Linux下C++语言编码的风格 41

习题 42

第2章 类和数据抽象 44

2.1类的定义 44

2.1.1类的定义 44

2.1.2类的成员函数 47

2.1.3类和结构 49

2.2对象的创建与成员引用 50

2.2.1对象的说明 51

2.2.2对象的生存期 53

2.2.3类作用域 54

2.2.4引用 56

2.2.5常类型 61

2.3构造函数与析构函数 69

2.3.1构造函数 69

2.3.2析构函数 71

2.3.3缺省构造函数和缺省析构函数 74

2.3.4带参数的构造函数 74

2.3.5内联函数和外联函数 76

2.3.6堆对象与拷贝构造函数 76

2.3.7局部类和嵌套类 82

2.4友元函数与友元类 83

2.4.1友元函数的说明 84

2.4.2友元函数的使用 86

2.4.3友元类 90

2.5静态成员 91

2.5.1静态数据成员 92

2.5.2静态成员函数 96

2.6 this指针 98

习题一 101

习题二 103

第3章 继承和派生 107

3.1基类和派生类 107

3.1.1派生类的定义格式 107

3.1.2派生类的3种继承方式 109

3.1.3访问控制 112

3.1.4基类和派生类的关系 118

3.2继承方式 118

3.2.1单继承 118

3.2.2多继承 130

3.2.3虚基类 140

3.3派生与继承应用实例 147

3.3.1问题描述 147

3.3.2算法分析 147

3.3.3数据说明 147

3.3.4功能说明:定义父类和相关的子类 149

3.3.5参考程序:“院校管理系统”程序实例 155

习题 156

第4章 多态性与虚函数 159

4.1重载 159

4.1.1运算符重载 159

4.1.2普通成员函数重载 179

4.1.3构造函数重载 183

4.1.4派生类指针 187

4.1.5模板 191

4.2虚函数 204

4.2.1静态联编与动态联编 204

4.2.2虚函数的概念 205

4.2.3动态联编与虚函数 213

4.2.4虚函数的限制 216

4.2.5虚函数与重载函数的比较 216

4.3纯虚函数和抽象类 216

4.3.1纯虚函数 216

4.3.2抽象类 218

4.3.3虚析构函数 223

习题一 224

习题二 226

习题三 227

第5章C++流 230

5.1 C++流类库 230

5.1.1预定义流 230

5.1.2 C++中的流类库 232

5.2 C++输入/输出流 232

5.2.1文件流 232

5.2.2字符串流 243

5.3 C++IO流格式控制 246

5.3.1 ios类中的枚举常量 246

5.3.2使用ios成员函数 248

5.3.3使用I/O操作符 250

5.3.4检测流操作的错误 252

习题 253

第6章 线性表 255

6.1线性表的逻辑结构 255

6.1.1线性表的定义 255

6.1.2线性表的基本操作 255

6.2线性表的顺序存储及运算实现 256

6.2.1顺序表 256

6.2.2顺序表上基本运算的实现 257

6.2.3顺序表应用举例 261

6.3线性表的链式存储和运算实现 263

6.3.1单链表 263

6.3.2单链表上基本运算的实现 264

6.3.3循环链表 269

6.3.4双向链表 270

6.3.5静态链表 272

6.3.6单链表应用举例 273

6.4顺序表和链表的比较 275

习题 276

第7章 查找 278

7.1基本概念与术语 278

7.2静态查找表 280

7.2.1静态查找表结构 280

7.2.2顺序查找 280

7.2.3有序表的折半查找 281

7.2.4有序表的插值查找和斐波那契查找 283

7.2.5分块查找 284

7.3动态查找表 285

7.3.1二叉排序树 285

7.3.2平衡二叉树(AVL树) 288

7.3.3 B-树和B+树 293

7.4哈希表查找(杂凑法) 298

7.4.1哈希表与哈希方法 298

7.4.2常用的哈希函数 299

7.4.3处理冲突的方法 300

7.4.4哈希表的查找分析 302

习题 303

第8章 排序 305

8.1基本概念 305

8.2插入排序 305

8.2.1直接插入排序 305

8.2.2折半插入排序 307

8.2.3表插入排序 307

8.2.4希尔排序(Shell's Sort) 310

8.3交换排序 311

8.3.1冒泡排序(Bubble Sort) 311

8.3.2快速排序 312

8.4选择排序 314

8.4.1简单选择排序 314

8.4.2树形选择排序 315

8.4.3堆排序(Heap Sort) 315

8.5二路归并排序 318

8.6基数排序 319

8.6.1多关键码排序 319

8.6.2链式基数排序 320

8.7外排序 323

8.7.1外部排序的方法 323

8.7.2多路平衡归并的实现 324

习题 326

参考文献 328