第1篇 基础知识 3
第1章 C++编程基础 3
1.1 C++简介 3
1.2 数据类型 6
1.3 常量和变量 8
1.4 运算符和表达式 9
1.5 const关键字 11
1.6 控制语句 15
1.7 类 21
1.8 流类库 58
1.9 模板 59
1.10 例题解析 63
第2篇 数据结构与算法基础 81
第2章 线性表 81
2.1 基础知识 81
2.2 存储结构和基本运算 81
2.3 例题解析 86
2.4 习题1 92
第3章 栈与队列 93
3.1 基础知识 93
3.2 存储结构和基本运算 93
3.3 例题解析 105
3.4 栈与队列实践 109
3.5 习题2 115
第4章 串 116
4.1 基础知识 116
4.2 串的存储结构和基本运算 116
4.3 串的典型算法(模式匹配算法) 118
4.4 例题解析 120
4.5 习题3 122
第5章 多维数组 123
5.1 基础知识 123
5.2 存储结构和基本运算 124
5.3 例题解析 129
5.4 多维数组实践——对称矩阵的压缩存储 131
5.5 习题4 132
第6章 树与二叉树 133
6.1 基础知识 133
6.2 存储结构 136
6.3 树与二叉树的遍历 139
6.4 例题解析 140
6.5 习题5 143
第7章 图 144
7.1 基础知识 144
7.2 存储结构和基本运算 147
7.3 例题解析 159
7.4 图实践 162
7.5 习题6 168
第8章 查找 169
8.1 基础知识 169
8.2 查找的概念 169
8.3 查找方法评价指标 170
8.4 静态查找表 170
8.5 动态查找 173
8.6 习题7 174
第9章 内排序 175
9.1 基础知识 175
9.2 插入排序 176
9.3 希尔排序 179
9.4 冒泡排序 180
9.5 快速排序 181
9.6 简单选择排序 182
9.7 习题8 183
第10章 经典算法分析与实现 184
10.1 贪心法 184
10.2 分治法 193
10.3 动态规划法 203
10.4 回溯法 214
10.5 习题9 223
第3篇 软件项目实习 227
第11章 基于Qt的电子点餐系统 227
11.1 点餐系统功能说明 227
11.2 电子点菜系统设计方案 227
11.3 相关技术点拨 232
11.4 电子点菜系统的实现与程序代码 233
第12章 多文本编辑器的设计与实现 245
12.1 多文本编辑器系统功能说明 245
12.2 多文本编辑器系统设计方案 245
12.3 相关技术点拨 247
12.4 系统实现与程序代码 247
第13章 俄罗斯方块 254
13.1 俄罗斯方块功能说明 254
13.2 俄罗斯方块系统设计方案 254
13.3 相关技术点拨 257
13.4 俄罗斯方块实现与程序代码 257
第14章 基于Qt的画图板功能的实现 262
14.1 画图板功能说明 262
14.2 画图板系统设计方案 262
14.3 相关技术点拨 264
14.4 画图板系统设计与程序代码 265
第15章 视频监控系统的设计与实现 274
15.1 视频监控系统功能说明 274
15.2 视频监控系统设计方案 274
15.3 相关技术点拨 276
15.4 视频监控系统实现与程序代码 279
第16章 基于Qt的扫雷游戏设计与实现 289
16.1 扫雷游戏的系统需求说明 289
16.2 扫雷游戏的系统设计方案 289
16.3 相关技术点拨 292
16.4 实现与程序代码 293
第17章 基于Qt的图书管理系统 296
17.1 图书管理系统功能说明 296
17.2 图书管理系统设计方案 296
17.3 相关技术点拨 298
17.4 图书管理系统实现与程序代码 299
第18章 网络版中国象棋 308
18.1 中国象棋系统功能说明 308
18.2 中国象棋系统设计方案 308
18.3 相关技术点拨 313
18.4 中国象棋实现与程序代码 314
参考文献 327