目录
第一部分数 据 结 构
第1章绪论/3
1.1数据结构的概念/3
1.1.1数据结构的范畴/3
1.1.2相关概念和术语/5
1.2算法和算法分析/7
1.2.1算法的基本概念/7
1.2.2算法复杂度/11
小结/13
习题/13
第2章线性表/16
2.1线性表的逻辑结构/16
2.1.1线性表的定义/16
2.1.2线性表的基本操作/17
2.2线性表的顺序存储及运算实现/18
2.2.1顺序存储的特点/18
2.2.2顺序表上的运算实现/19
2.3线性表的链式存储及运算实现/22
2.3.1链式存储的特点/23
2.3.2链表上的运算实现/25
小结/27
习题/28
第3章特殊线性表/30
3.1栈/30
3.1.1栈的定义/30
3.1.2栈的存储及运算实现/31
3.2队列/33
3.2.1队列的定义/33
3.2.2队列的存储及运算实现/35
3.3串/38
3.3.1串的定义/38
3.3.2串的存储/40
小结/41
习题/41
第4章数组/43
4.1数组的定义/43
4.2数组的存储及运算实现/44
小结/46
习题/47
第5章树与二叉树/48
5.1树/48
5.1.1树的定义/48
5.1.2相关术语/49
5.2二叉树/50
5.2.1二叉树的定义/50
5.2.2二叉树的性质/51
5.2.3二叉树的存储结构/52
5.3二叉树的遍历/53
小结/55
习题/55
第6章图/58
6.1图的定义和术语/58
6.2图的存储表示/60
6.3图的遍历/62
小结/64
习题/65
第7章查找/67
7.1基本概念/67
7.2静态查找表/68
7.2.1顺序查找/68
7.2.2折半查找/69
7.2.3索引查找/70
7.3动态查找表/70
7.3.1二叉排序树/71
7.3.2平衡二叉树/74
7.4哈希表的查找/74
小结/76
习题/77
第8章排序/78
8.1基本概念/78
8.2插入排序/79
8.2.1直接插入排序/79
8.2.2希尔排序/81
8.3交换排序/82
8.3.1冒泡排序/82
8.3.2快速排序/84
8.4选择排序/86
8.5归并排序/87
小结/89
习题/90
第二部分数据库技术
第9章数据库系统概述/93
9.1数据库系统的作用/93
9.1.1数据与数据管理/93
9.1.2数据库应用/96
9.2数据库处理技术的发展过程/99
9.2.1人工管理阶段/99
9.2.2文件系统阶段/99
9.2.3数据库系统阶段/100
9.2.4高级数据库阶段/103
9.3数据模型/104
9.3.1概念模型/105
9.3.2数据模型/109
9.3.3层次模型/110
9.3.4网状模型/111
9.3.5关系模型/113
9.3.6面向对象模型/115
9.4数据库系统的结构/117
9.4.1数据库系统的三级模式结构/117
9.4.2数据库系统的二级映像/119
9.4.3数据库体系结构/120
9.5数据库管理系统/123
9.5.1DBMS的工作模式/123
9.5.2DBMS的主要功能/124
9.5.3DBMS的组成/125
小结/126
习题/127
第10章关系模型与关系代数/128
10.1关系模型/128
10.2关系代数/132
10.2.1集合的三种基本运算——交、并、差/132
10.2.2关系的基本运算/134
小结/139
习题/139
第11章关系数据库标准语言——SQL/142
11.1SQL概述及特点/142
11.1.1SQL概述/142
11.1.2SQL的特点/143
11.1.3SQL的基本概念/144
11.2SQL的数据定义/145
11.2.1数据库的定义/145
11.2.2基本表的定义/148
11.2.3索引的定义/153
11.3SQL的单表查询/155
11.3.1SELECT语句概述/155
11.3.2投影运算/157
11.3.3选择运算/158
11.3.4排序运算/163
11.3.5查询表/164
11.4SQL的连接查询/164
11.4.1等值与非等值连接/165
11.4.2自表连接/167
11.4.3外连接/168
11.5SQL的聚合查询/171
11.5.1聚合函数/171
11.5.2分组聚合/172
11.6SQL的嵌套子查询/174
11.6.1使用IN的子查询/174
11.6.2使用比较运算符的子查询/175
11.6.3使用存在量词EXISTS的子查询/176
11.7集合运算/177
11.8SQL的数据操纵/179
11.8.1插入数据/179
11.8.2更新数据/181
11.8.3删除数据/182
11.9视图/183
11.9.1创建视图/184
11.9.2查询视图/186
11.9.3视图更新/186
11.9.4删除视图/188
小结/188
习题/189
第12章数据库设计及优化/193
12.1数据库设计方法/193
12.1.1数据库和信息系统/194
12.1.2数据库设计过程/194
12.2需求分析/196
12.2.1需求分析的任务/196
12.2.2需求分析的步骤/197
12.2.3需求分析的方法/197
12.3概念结构设计/199
12.3.1概念模型的基本概念/199
12.3.2概念模型的表示方法/199
12.3.3概念结构的特点/200
12.3.4概念结构设计的方法/200
12.3.5概念结构设计的步骤/201
12.4规范化/203
12.4.1关系模式规范化的必要性/203
12.4.2函数依赖/204
12.4.3范式与规范化/206
12.4.4模式分解原则/210
12.4.5规范化的本质分析与总结/210
12.5逻辑结构设计/211
12.5.1概念模型向关系模型的转换/211
12.5.2数据模型的优化/214
12.5.3数据库逻辑设计案例/214
12.6数据库的物理设计/216
12.6.1数据库物理设计的方法/216
12.6.2确定数据库的物理结构/218
12.6.3对物理结构进行评价/218
12.7数据库的实施与维护/218
12.7.1数据库的实施/219
12.7.2数据库的维护/220
小结/221
习题/221
第13章数据库安全性与完整性/223
13.1数据库安全性/223
13.1.1数据库安全的基本概念/224
13.1.2用户管理/225
13.1.3角色管理/227
13.2数据库完整性/228
13.2.1完整性约束的概念和类型/229
13.2.2完整性约束的管理/230
13.3TransactSQL基础/234
13.3.1SQL对象的命名规则和注释/234
13.3.2数据类型/235
13.3.3变量/238
13.3.4函数/240
13.3.5批处理和流程控制/244
13.4游标/248
13.4.1游标的使用/248
13.4.2当前游标集的修改/251
13.5存储过程/252
13.5.1存储过程概述/253
13.5.2创建和执行存储过程/253
13.5.3修改和删除存储过程/255
13.6触发器/256
13.6.1触发器概述/256
13.6.2创建触发器/256
13.6.3删除和修改触发器/259
小结/259
习题/260
第14章事务管理与恢复/261
14.1事务/261
14.1.1并发操作时产生的问题/261
14.1.2事务的概念/263
14.1.3事务的特性/264
14.2并发控制/265
14.3恢复与备份/267
14.3.1数据库系统的故障/267
14.3.2数据库备份/268
14.3.3数据库恢复/269
小结/271
习题/272
第15章数据库应用开发/273
15.1Python DBAPI/273
15.2系统分析/276
15.2.1系统需求分析/276
15.2.2系统用例分析/277
15.2.3系统时序图/277
15.3数据库分析和设计/278
15.3.1数据库分析/278
15.3.2数据库设计/279
15.4系统界面设计及相关代码实现/281
15.4.1酒店客房管理系统的首界面设计及其代码实现/281
15.4.2客房信息管理界面的设计及其代码实现 /282
小结/283
参考文献/284
