第一部分 数据结构 3
第1章 绪论 3
1.1数据结构的概念 3
1.1.1数据结构的范畴 3
1.1.2相关概念和术语 4
1.2算法和算法分析 7
1.2.1算法的基本概念 7
1.2.2算法复杂度 11
小结 13
习题 14
第2章 线性表 15
2.1线性表的逻辑结构 15
2.1.1线性表的定义 15
2.1.2线性表的基本操作 16
2.2线性表的顺序存储及运算实现 17
2.2.1顺序存储的特点 17
2.2.2顺序表上的运算实现 17
2.3线性表的链式存储及运算实现 21
2.3.1链式存储的特点 22
2.3.2链表上的运算实现 24
小结 26
习题 27
第3章 特殊线性表 28
3.1栈 28
3.1.1栈的定义 28
3.1.2栈的存储及运算实现 29
3.2队列 31
3.2.1队列的定义 31
3.2.2队列的存储及运算实现 33
3.3串 35
3.3.1串的定义 35
3.3.2串的存储 37
小结 37
习题 38
第4章 数组 39
4.1数组的定义 39
4.2数组的存储及运算实现 40
小结 42
习题 42
第5章 树与二叉树 43
5.1树 43
5.1.1树的定义 43
5.1.2相关术语 44
5.2二叉树 45
5.2.1二叉树的定义 45
5.2.2二叉树的性质 46
5.2.3二叉树的存储结构 47
5.3二叉树的遍历 48
小结 50
习题 50
第6章图 51
6.1图的定义和术语 51
6.2图的存储表示 53
6.3图的遍历 55
小结 57
习题 58
第7章 查找 59
7.1基本概念 59
7.2静态查找表 60
7.2.1顺序查找 60
7.2.2折半查找 61
7.2.3索引查找 62
7.3动态查找表 63
7.3.1二叉排序树 64
7.3.2平衡二叉树 66
7.4哈希表的查找 66
小结 69
习题 69
第8章 排序 70
8.1基本概念 70
8.2插入排序 71
8.2.1直接插入排序 71
8.2.2希尔排序 73
8.3交换排序 74
8.3.1冒泡排序 74
8.3.2快速排序 76
8.4选择排序 78
8.5归并排序 79
小结 81
习题 82
第二部分 数据库技术 85
第9章 数据库系统概述 85
9.1数据库系统的作用 85
9.1.1数据与数据管理 85
9.1.2数据库应用 88
9.2数据库处理技术的发展过程 91
9.2.1人工管理阶段 91
9.2.2文件系统阶段 92
9.2.3数据库系统阶段 93
9.2.4高级数据库阶段 95
9.3数据模型 97
9.3.1概念模型 97
9.3.2数据模型 101
9.3.3层次模型 103
9.3.4网状模型 104
9.3.5关系模型 106
9.3.6面向对象模型 109
9.4数据库系统的结构 111
9.4.1数据库系统的三级模式结构 111
9.4.2数据库系统的二级映像 113
9.4.3数据库体系结构 114
9.5数据库管理系统 117
9.5.1 DBMS的工作模式 117
9.5.2 DBMS的主要功能 118
9.5.3 DBMS的组成 119
小结 120
习题 121
第10章 关系模型与关系代数 122
10.1关系模型 122
10.2关系代数 126
10.2.1集合的三种基本运算——交、并、差 126
10.2.2关系的基本运算 129
小结 133
习题 134
第11章 关系数据库标准语言——SQL 135
11.1 SQL概述及特点 135
11.1.1 SQL概述 135
11.1.2 SQL的特点 136
11.1.3 SQL的基本概念 137
11.2 SQL的数据定义 138
11.2.1数据库的定义 138
11.2.2基本表的定义 141
11.2.3索引的定义 147
11.3 SQL的单表查询 149
11.3.1 SELECT语句概述 149
11.3.2投影运算 151
11.3.3选择运算 153
11.3.4排序运算 157
11.3.5查询表 158
11.4 SQL的连接查询 159
11.4.1等值与非等值连接 159
11.4.2自表连接 162
11.4.3外连接 163
11.5 SQL的聚合查询 166
11.5.1聚合函数 166
11.5.2分组聚合 167
11.6 SQL的嵌套子查询 169
11.6.1使用IN的子查询 169
11.6.2使用比较运算符的子查询 170
11.6.3使用存在量词EXISTS的子查询 172
11.7集合运算 173
11.8 SQL的数据操纵 174
11.8.1插入数据 174
11.8.2更新数据 176
11.8.3删除数据 178
11.9视图 179
11.9.1创建视图 179
11.9.2查询视图 181
11.9.3视图更新 182
11.9.4删除视图 183
小结 184
习题 184
第12章 数据库设计及优化 189
12.1数据库设计方法 189
12.1.1数据库和信息系统 189
12.1.2数据库设计过程 190
12.2需求分析 192
12.2.1需求分析的任务 192
12.2.2需求分析的步骤 193
12.2.3需求分析的方法 193
12.3概念结构设计 195
12.3.1概念模型的基本概念 195
12.3.2概念模型的表示方法 195
12.3.3概念结构的特点 196
12.3.4概念结构设计的方法 197
12.3.5概念结构设计的步骤 198
12.4规范化 200
12.4.1关系模式规范化的必要性 200
12.4.2函数依赖 201
12.4.3范式与规范化 203
12.4.4模式分解原则 207
12.4.5规范化的本质分析与总结 207
12.5逻辑结构设计 208
12.5.1概念模型向关系模型的转换 208
12.5.2数据模型的优化 211
12.5.3数据库逻辑设计案例 212
12.6数据库的物理设计 214
12.6.1数据库物理设计的方法 214
12.6.2确定数据库的物理结构 215
12.6.3对物理结构进行评价 216
12.7数据库的实施与维护 216
12.7.1数据库的实施 216
12.7.2数据库的维护 218
小结 219
习题 219
第13章 数据库安全性与完整性 221
13.1数据库安全性 221
13.1.1数据库安全的基本概念 221
13.1.2用户管理 223
13.1.3角色管理 225
13.2数据库完整性 226
13.2.1完整性约束的概念和类型 227
13.2.2完整性约束的管理 228
13.3 Transact-SQL基础 233
13.3.1 SQL对象的命名规则和注释 233
13.3.2数据类型 233
13.3.3变量 237
13.3.4函数 239
13.3.5批处理和流程控制 242
13.4游标 246
13.4.1游标的使用 247
13.4.2当前游标集的修改 250
13.5存储过程 252
13.5.1存储过程概述 252
13.5.2创建和执行存储过程 252
13.5.3修改和删除存储过程 254
13.6触发器 255
13.6.1触发器概述 255
13.6.2创建触发器 256
13.6.3删除和修改触发器 258
小结 259
习题 259
第14章 事务管理与恢复 260
14.1事务 260
14.1.1并发操作时产生的问题 260
14.1.2事务的概念 262
14.1.3事务的特性 263
14.2并发控制 264
14.3恢复与备份 266
14.3.1数据库系统的故障 266
14.3.2数据库备份 267
14.3.3数据库恢复 268
小结 271
习题 271
第15章 数据库应用开发 272
15.1 ADO.NET概述 272
15.2系统分析 276
15.2.1系统需求分析 276
15.2.2系统用例分析 277
15.2.3系统时序图 278
15.3数据库分析和设计 279
15.3.1数据库分析 279
15.3.2数据库设计 279
15.4数据库的连接和访问 281
15.4.1数据库的连接 281
15.4.2数据库的访问 282
15.5系统界面设计及相关代码实现 284
15.5.1酒店客房管理系统的首界面设计及其代码实现 284
15.5.2客房信息管理界面的设计及其代码实现 286
小结 287
参考文献 288