前言 1
第1章 概述 1
1.1 计算机软件 1
1.1.1 计算机软件定义 1
1.1.2 计算机软件开发环境 2
1.1.3 面向对象的软件开发方法 2
1.2 数据结构概述 3
1.2.1 数据和数据结构 3
1.2.2 算法的描述及评价 5
1.3 数据库系统概述 7
1.3.1 信息、数据和数据处理 7
1.3.2 数据管理技术的发展 8
1.3.3 数据库系统的级成与体系结构 9
1.3.4 数据库管理系统 10
1.3.5 数据模型 11
习题 12
2.1.1 线性表的定义及操作 13
2.1 线性表 13
第2章 线性数据结构 13
2.1.2 线性表的顺序存储结构 14
2.1.3 线性表的链式存储结构 16
2.1.4 循环链表的双向链表 21
2.2 栈和队列 23
2.2.1 栈 23
2.2.2 队列 26
2.3.1 串 30
2.3 串和数组 30
2.3.2 数组 33
习题 36
第3章 非线性数据结构 38
3.1 非线性数据结构 38
3.2 二叉树 39
3.2.1 二叉树的定义及其性质 39
3.2.2 二叉树的存储结构 42
3.3 二叉树的遍历 44
3.4 树的存储结构与遍历 46
3.5 树、森林与二叉树的转换 47
3.6 图及其基本概念 49
3.7 图的存储结构 50
3.7.1 邻接矩阵 51
3.7.2 邻接表 51
3.8 图的遍历 53
3.9 图的连通性及最小生成树 56
习题 58
4.1.1 顺序查找 62
4.1 线性表查找 62
第4章 查找与排序 62
4.1.2 折半查找 64
4.1.3 分块查找 65
4.2 二叉排序树的查找 66
4.3 哈希查找 71
4.3.1 哈希表的建立 71
4.3.2 处理冲突的方法 71
4.3.3 哈希查找 73
4.4 排序 73
4.4.1 直接插入排序 74
4.4.2 简单选择排序 75
4.4.3 冒泡排序 76
4.4.4 快速排序 76
4.4.5 归并排序 78
习题 80
5.1.1 操作系统的作用与地位 82
5.1.2 操作系统的功能与分类 82
5.1 概述 82
第5章 操作系统概述及文件系统 82
5.2 文件系统 84
5.2.1 文件和文件系统 85
5.2.2 文件的类型 86
5.2.3 文件结构和存取方法 86
5.2.4 文件目录 89
5.2.5 文件存储空间的管理 92
5.2.6 文件的共享及存取控制 92
习题 93
6.1.1 进程概念的引入 94
第6章 操作系统原理基础 94
6.1 进程管理 94
6.1.2 进程调度 98
6.1.3 死锁的问题 101
6.2 存储管理 102
6.2.1 存储管理的功能 102
6.2.2 地址转换 103
6.2.3 分区管理 104
6.2.4 分页管理 106
6.2.5 分段管理 108
6.2.6 段页式管理 109
6.3 设备管理 110
6.3.1 基本知识 110
6.3.2 设备分配 113
6.3.3 I/O控制 114
6.4 作业管理 115
6.4.1 作业的基本概念 116
6.4.2 作业控制块和后备队列 116
6.4.4 作业调度算法 117
6.4.3 作业调度 117
6.5 几种常用操作系统简介 118
6.5.1 UNIX / XENIX操作系统 118
6.5.2 磁盘操作系统(DOS) 120
6.5.3 Windows 120
习题 121
第7章 关系数据库及其数学基础 122
7.1 数学定义 122
7.2 关系数据库及其性质 124
7.3 关系代数 127
7.4 关系规范化理论 130
7.4.1 关系中的关键字 130
7.4.2 函数依赖 132
7.4.3 规范化和范式 133
7.4.4 第一、第二和第三范式 134
7.4.5 关系模式和分解 137
习题 138
8.1 设计过程概述 140
第8章 数据库应用系统的设计 140
8.2 应用系统的要求分析 141
8.3 实体联系方法 143
8.4 概念模式设计 145
8.5 逻辑模式设计 147
8.6 系统的运行 149
习题 150
第9章 FoxBASE+系统简介 151
9.1 FoxBASE+的组成及使用 151
9.2 FoxBASE+基本语法与文件类型 153
9.3 数据库文件的建立和编辑 158
9.4 排序和索引 166
9.5 数据库文件的关系操作 170
9.6 多个工作区 171
9.7 数据库结构操作命令 175
9.8 数据库文件的统计与汇总 176
习题 178
10.1 FoxBASE+程序特点 181
第10章 FoxBASE+程序设计与其它 181
10.2 FoxBASE+程序的建立和执行 182
10.3 程序控制结构 184
10.4 过程 188
10.5 格式化输入输出语句 189
10.6 定义和输出报表及标签 192
10.7 综合程序设计 194
10.8 FoxBASE+与高级语言的连接 201
习题 204
第11章 软件工程 205
11.1 软件工程概述 205
11.2 软件的需求分析 207
11.3 软件的设计 215
11.4 软件的编程 230
11.5 软件的测试 232
11.6 软件的维护 243
习题 244
参考文献 246