基础篇 3
1 数据结构基础 3
1.1 绪论 3
1.1.1 什么是数据结构 3
1.1.2 数据结构中的基本概念 4
1.2 线性结构 8
1.2.1线性表 8
1.2.2栈与队列 18
1.2.3 串 21
1.3 非线性结构 23
1.3.1 树 23
1.3.2 二叉树 24
1.4 查找与排序 30
1.4.1查找 30
1.4.2排序 32
习题一 35
2 操作系统基础 37
2.1绪论 37
2.1.1操作系统的概念(Operating Svstem) 37
2.1.2常见的操作系统 37
2.1.3操作系统的功能 37
2.2 进程管理基础 38
2.2.1进程的基本概念 38
2.2.2进程状态 38
2.2.3 进程管理 39
2.2.4进程间的关系 39
2.2.5进程调度概述 39
2.2.6进程通信简介 40
2.2.7死锁的基础知识 40
2.3.1 作业的基本概念 41
2.3 作业管理基础 41
2.3.2作业的基本状态 42
2.3.3 作业调度算法 42
2.4 存储管理基础 43
2.4.1存储管理的功能 43
2.4.2单一连续区分配概述 45
2.4.3分区存储管理方案概述 45
2.4.4分区管理的内存扩充 45
2.4.5 虚拟存储器的概念 46
2.4.6 分页存储管理概述 46
2.4.7 段式存储管理方案概述 47
2.4.8 段页式存储管理方案概述 47
2.5设备管理基础 47
2.5.1设备管理概述 47
2.5.2数据传送方式 48
2.6 文件管理基础 49
2.5.3缓冲技术的概念 49
2.5.4设备分配的内容 49
2.6.1文件系统 50
2.6.2文件的组织 50
2.6.3 文件目录 50
2.6.4 文件的共享及存取控制 51
2.6.5 辅存空间管理 51
2.6.6 文件的使用 51
习题二 51
3 软件工程基础 53
3.1概论 53
3.1.1软件危机 53
3.1.2软件工程及软件工程学 53
3.2软件生存周期 54
3.2.1软件定义 54
3.2.2软件生存周期 55
3.3.1需求分析的任务 56
3.3.2结构分析方法的步骤 56
3.3需求分析 56
3.3.3结构分析方法的基本工具 57
3.4软件设计 58
3.4.1软件设计的任务 58
3.4.2模块独立性准则 59
3.4.3软件总体设计方法 60
3.4.4详细设计方法 60
3.5软件编程 61
3.5.1编辑风格 61
3.5.2程序设计语言 63
3.6.1软件测试的目的 65
3.6.2常用的测试方法 65
3.6软件测试 65
3.7 软件维护 66
3.7.1软件维护的必要性 66
3.7.2软件维护的副作用 67
习题三 67
4数据库基础知识 68
4.1数据库管理概述 68
4.1.1数据和信息处理 68
4.1.2数据管理技术的发展 69
4.1.3数据库系统 72
4.1.4 数据库的体系结构 74
4.2 数据模型 76
4.2.1数据和数据联系的描述 76
4.2.2数据模型 77
4.3 数据库设计基础 83
4.3.1 数据库设计的内容和方法 83
4.3.2数据库设计步骤 84
习题四 86
5计算机网络基础 87
5.1计算机网络的形成和发展 87
5.1.1计算机网络的产生 87
5.1.2计算机网络的发展 88
5.2 计算机网络的定义与分类 88
5.2.1计算机网络的定义 88
5.2.2计算机网络的组成 89
5.2.3计算机网络的分类 89
5.2.4计算机网络拓扑结构 90
5.3数据交换技术 91
5.3.1线路交换 91
5.3.2报文交换 92
5.3.3分组交换 92
5.4网络体系结构 93
5.3.4ATM交换 93
5.4.1协议的分层结构 94
5.4.2ISO/OSI参考模型 94
5.5TCP/IP参考模型与协议 97
5.5.1TCP/IP的基本概念 97
5.5.2TCP/IP协议的分层结构 98
5.6局域网技术 99
5.6.1局域网参考模型与协议 100
5.6.2随机接入:ALOHA 101
5.6.3IEEE802.3标准:CSMA/CD 102
5.6.4IEEE802.5标准:Token Ring 103
5.6.5IEEE802.4标准:Token Bus 104
5.6.6交换局域网 104
5.7Internet 技术 106
5.7.1IP地址 106
5.7.2子网和子网掩码 107
5.7.3域名与域名系统 109
5.7.4Internet的基本服务功能 111
5.7.5WWW服务 112
5.7.6Internet用户接入方式 113
习题五 113
提高篇 117
6数据结构 117
6.1图 117
6.1.1图的基本概念 117
6.1.2图的存储结构 119
6.1.3图的遍历 121
6.1.4最小生成树 122
6.1.5AOV网与拓扑排序 124
6.2散列法 126
6.2.1散列法 126
6.2.3解决冲突的方法 127
6.2.2构造散列函数 127
6.3快速排序 129
习题六 130
7操作系统 132
7.1进程管理 132
7.1.1进程的概念与特征 132
7.1.2进程控制块及进程的状态 133
7.1.3进程控制 134
7.1.4进程互斥与同步 135
7.1.5进程调度(Processes Scheduling) 137
7.1.6进程通信 138
7.1.7死锁 138
7.2作业管理 139
7.2.1用户和操作系统之间的接口 139
7.2.3作业的建立过程 140
7.2.2作业的概念、组成 140
7.2.5作业的状态及其转换 141
7.2.4作业的分类和控制 141
7.2.6作业调度 142
7.3存储管理 143
7.3.1单一连续区分配 144
7.3.2分区存储管理 144
7.3.3覆盖与交换技术 146
7.3.4虚拟存储器 146
7.3.5分页存储管理 147
7.3.6段式存储管理 151
7.3.7段页式存储管理 153
7.4设备管理 153
7.4.1数据传送方式 154
7.4.2缓冲技术 155
7.4.4设备分配 156
7.4.3设备的绝对号、类型号、相对号和符号名 156
7.4.5虚拟设备管理与SPOOLING技术 158
7.5文件管理 158
7.5.1文件的组织 158
7.5.2文件目录 160
7.5.3文件的保护和保密 161
7.5.4文件存储空间管理 162
7.6 UNIX操作系统 162
7.6.1UNIX操作系统的特点 162
7.6.2UNIX系统的结构 163
7.6.3UNIX的文件系统 163
7.6.4UNIX系统的使用 164
习题七 166
8.1.1软件的特点 168
8.1.2软件开发的基本原理和目标 168
8软件工程 168
8.1软件开发概述 168
8.2项目计划与可行性研究 169
8.2.1项目计划与系统目标 169
8.2.2可行性研究 170
8.3需求分析方法 171
8.3.1结构化方法的特点 171
8.3.2数据流分析设计 172
8.3.3数据字典设计 173
8.3.4加工说明的几种形式 175
8.4软件设计 177
8.4.1设计的基本原则 177
8.4.2变换型分析设计方法 177
8.4.3事务型分析设计方法 179
8.4.4详细设计表示法 180
8.5.1软件测试步骤与原则 182
8.5软件测试与软件质量 182
8.5.2白盒法 183
8.5.3黑盒法 184
8.5.4软件调试 185
8.5.5软件质量保证 185
8.6软件维护与软件文档 186
8.6.1影响软件维护的因素 186
8.6.2软件维护过程 187
8.6.3软件版本控制 187
8.6.4软件工程标准 187
习题八 189
9关系数据库系统 191
9.1关系数据模型 191
9.1.1关系模型的数据结构 191
9.1.2关系数据库的数据完整性 192
9.1.3关系运算 193
9.2关系数据库设计理论 194
9.2.1数据库模式的设计 194
9.2.2函数依赖 195
9.2.3关系模式的规范化理论简述 196
9.3 结构化查询语言——SQL 196
9.3.1SQL数据库的体系结构 196
9.3.2 SQL数据定义 197
9.3.3 SQL数据查询 199
9.3.4 SQL数据操纵 206
9.3.5 SQL数据控制 207
9.3.6嵌入式SQL 207
习题九 208
10数据通信与计算机网络 210
10.1数据通信基础 210
10.1.1数据通信的基本概念 210
10.1.2数据通信的基本方式 211
10.1.3多路复用技术 213
10.1.4数据编码技术 214
10.1.5差错控制方法 218
10.2网络操作系统 219
10.2.1局域网操作系统的发展与分类 220
10.2.2局域网操作系统的基本服务功能 221
10.2.3典型局域网操作系统:Windows NT Server 222
10.2.4典型局域网操作系统:NetWare 224
10.2.5UNIX操作系统的网络功能 225
10.3网络互联技术 226
10.3.1网络互联的层次 226
10.3.2中继器和集线器 226
10.3.3网桥 227
10.3.4路由器 230
10.3.5网关 232
习题十 233