目 录
第1章 数据结构与算法
11 算法………………………………………………1
111 什么是算法………………………………………………1
112 算法复杂度………………………………………………4
12 数据结构的基本概念………………………………………………5
121 什么是数据结构………………………………………………5
122 数据结构的图形表示………………………………………………7
123 线性结构与非线性结构………………………………………………7
13 线性表及其顺序存储结构………………………………………………8
131 线性表的基本概念………………………………………………8
132 线性表的顺序存储结构………………………………………………8
133 线性表的插入运算………………………………………………9
134 线性表的删除运算………………………………………………10
14 栈和队列………………………………………………11
141 栈及其基本运算………………………………………………11
142 队列及其基本运算………………………………………………13
15 线性链表………………………………………………15
151 线性链表的基本概念………………………………………………15
152 线性链表的基本运算………………………………………………18
153 循环链表及其基本运算………………………………………………18
16 树和二叉树………………………………………………19
161 什么是树结构………………………………………………19
162 二叉树及其基本性质………………………………………………21
163 二叉树的存储结构………………………………………………23
164 二叉树的遍历………………………………………………25
17 查找技术………………………………………………26
171 顺序查找………………………………………………26
172 二分法查找………………………………………………27
18 排序技术………………………………………………27
181 交换类排序法………………………………………………27
182 插入类排序法………………………………………………30
183 选择类排序法………………………………………………32
184 排序方法比较………………………………………………33
本章小结………………………………………………34
巩固练习………………………………………………34
第2章 程序设计基础
21 程序设计方法与风格………………………………………………36
22 结构化程序设计………………………………………………38
221 结构化程序设计的原则………………………………………………38
222 结构化程序设计的基本结构………………………………………………38
223 结构化程序设计原则和方法的应用………………………………………………40
23 面向对象的程序设计………………………………………………41
231 面向对象方法的基本概念………………………………………………41
232 面向对象方法的优点………………………………………………44
本章小结………………………………………………46
巩固练习………………………………………………46
第3章 软件工程基础
31 软件工程基本概念………………………………………………47
311 软件定义与软件特点………………………………………………47
312 软件危机与软件工程………………………………………………48
313 软件工程过程与软件生命周期………………………………………………49
314 软件工程的目标与原则………………………………………………50
315 软件开发工具与软件开发环境………………………………………………51
32 结构化分析方法………………………………………………52
321 需求分析与需求分析方法………………………………………………52
322 结构化分析方法………………………………………………53
323 软件需求规格说明书………………………………………………56
33 结构化设计方法………………………………………………57
331 软件设计概述………………………………………………57
332 概要设计………………………………………………60
333 详细设计………………………………………………64
34 软件测试………………………………………………67
341 软件测试的目的………………………………………………67
342 软件测试的准则………………………………………………67
343 软件测试技术和方法综述………………………………………………68
344 软件测试的实施………………………………………………73
35 程序的调试………………………………………………76
351 程序调试的基本概念………………………………………………76
352 程序调试方法………………………………………………77
本章小结………………………………………………79
巩固练习………………………………………………79
第4章 数据库设计基础
41 数据库系统的基本概念………………………………………………81
411 数据、数据库、数据库管理系统………………………………………………81
412 数据库系统的发展………………………………………………85
413 数据库系统的基本特点………………………………………………86
414 数据库系统体系结构………………………………………………87
42 数据模型………………………………………………90
421 数据模型的基本概念………………………………………………90
422 ER模型………………………………………………91
423 层次模型………………………………………………94
424 网状模型………………………………………………95
425 关系模型………………………………………………95
43 关系代数………………………………………………98
431 关系代数的基本操作………………………………………………98
432 关系模型的基本运算………………………………………………98
433 关系代数的扩充运算………………………………………………100
434 关系代数的应用实例………………………………………………103
44 数据库设计与管理………………………………………………104
441 数据库设计概述………………………………………………104
442 数据库设计的需求分析………………………………………………105
443 数据库概念设计………………………………………………106
444 数据库逻辑设计………………………………………………109
445 数据库物理设计………………………………………………111
446 数据库管理………………………………………………111
本章小结………………………………………………112
巩固练习………………………………………………112
附录 巩固练习参考答案………………………………………………114