当前位置:首页 > 工业技术
计算机软件技术基础
计算机软件技术基础

计算机软件技术基础PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:李莉主编
  • 出 版 社:北京:兵器工业出版社
  • 出版年份:2003
  • ISBN:7801721373
  • 页数:287 页
图书介绍:本书是高等学校计算机应用基础课程的教材。它主要涵盖了数据结构、操作系统、数据库基础、面向程序设计、软件工程和试验训练等内容。
《计算机软件技术基础》目录

第一部分 数据结构 2

第1章 绪论 2

1.1 数据结构的基本概念 2

1.1.1 数据 2

1.1.2 数据元素 2

1.1.3 数据结构 2

1.1.4 数据的逻辑结构和物理结构 4

1.1.5 数据的运算 4

1.1.6 数据类型及其分类 4

1.2 数据的主要存储方式 5

1.2.1 顺序存储结构 5

1.2.2 链式存储结构 5

1.3 算法设计与分析 6

1.3.1 算法与设计 6

1.3.2 算法的描述 6

1.3.3 算法分析 7

第2章 线性表 8

2.1 线性表的定义 8

2.2 线性表的顺序表示和一维数组 9

2.3 线性表的链式表示和实现 10

2.3.1 单链表 10

2.3.2 循环链表 12

2.3.3 双向链表 13

第3章 栈、队列和字符串 15

3.1 栈 15

3.2 队列 18

3.2.1 链队列——队列的链式表示和实现 18

3.2.2 循环队列——队列的顺序表示和实现 19

3.3 串 21

第4章 数组和广义表 22

4.1 多维数组的顺序表示和实现 22

4.2 矩阵的压缩存储 22

4.2.1 特殊矩阵 23

4.2.2 稀疏矩阵 23

4.3 广义表的定义和存储 24

第5章 树和二叉树 26

5.1 树的定义和基本术语 26

5.2 二叉树 27

5.2.1 二叉树的定义 27

5.2.2 二叉树的性质 27

5.2.3 二叉树的存储结构 29

5.3 遍历二叉树和线索二叉树 29

5.3.1 遍历二叉树 29

5.3.2 线索二叉树 30

5.4 树和森林 31

5.4.1 树的存储结构 31

5.4.2 树的二叉树表示 33

5.4.3 树和森林的遍历 33

5.5 赫夫曼树及其应用 34

第6章 图 37

6.1 图的定义和术语 37

6.2 图的存储结构 38

6.2.1 数组表示法 38

6.2.2 邻接表表示法 39

6.3 图的遍历 41

6.3.1 深度优先搜索 41

6.3.2 广度优先搜索 42

第7章 查找 43

7.1 静态查找表 43

7.1.1 顺序表的查找 43

7.1.2 二分法(折半)的查找 44

7.1.3 索引顺序表的查找 45

7.1.4 散列表的存储和查找 45

7.2 动态查找表 47

7.2.1 二叉排序树及其查找过程 48

7.2.2 二叉排序树的插入和删除 48

7.2.3 平衡二叉树 49

第8章 内部排序 51

8.1 概述 51

8.2 插入排序 51

8.2.1 直接插入排序 51

8.2.2 折半插入排序 52

8.2.3 希尔排序 52

8.3 快速排序 53

8.3.1 冒泡排序 53

8.3.2 快速排序 54

8.4 选择排序 55

8.4.1 简单选择排序 55

8.4.2 树形选择排序 56

8.4.3 堆排序 57

8.5 归并排序 59

习题 59

第二部分 操作系统 62

第1章 操作系统概述 62

1.1 操作系统基本概念 62

1.1.1 操作系统定义 62

1.1.2 计算机系统的资源 62

1.1.3 操作系统的特征 63

1.1.4 操作系统的地位 63

1.2 操作系统的分类 64

1.2.1 批处理系统 64

1.2.2 分时系统 65

1.2.3 实时系统 65

1.2.4 通用操作系统 66

1.2.5 微机操作系统 66

1.2.6 网络操作系统 66

1.2.7 分布式操作系统 66

1.3 操作系统的功能 66

1.3.1 处理机管理功能 67

1.3.2 存储管理功能 67

1.3.3 文件管理 67

1.3.4 设备管理 67

1.3.5 用户接口 68

1.4 操作系统的硬件环境 68

1.4.1 特权指令与处理机状态 68

1.4.2 中断机制 68

1.4.3 定时装置 69

第2章 计算机资源管理 70

2.1 进程管理 70

2.1.1 程序的并发执行 70

2.1.2 进程的概念与特征 72

2.1.3 进程的状态及其状态转换 73

2.1.4 进程控制 73

2.1.5 进程调度 74

2.1.6 进程的同步与互斥 76

2.1.7 进程的通信 80

2.1.8 死锁 81

2.2 作业管理 84

2.2.1 操作系统接口 84

2.2.2 作业管理概述 85

2.3 存储管理 85

2.3.1 存储管理概述 85

2.3.2 分区存储管理 87

2.3.3 离散存储管理 88

2.3.4 虚拟存储技术 88

2.4 文件管理 89

2.4.1 文件与文件系统 89

2.4.2 文件的组织 90

2.4.3 文件目录 91

2.4.4 文件操作 92

2.5 设备管理 92

2.5.1 设备管理概述 92

2.5.2 输入输出控制方式 93

2.5.3 缓冲技术 94

2.5.4 设备处理 95

第3章 常用操作系统介绍 96

3.1 Windows操作系统 96

3.1.1 Windows的发展 96

3.1.2 Windows的特点 96

3.1.3 Windows 2000的体系结构 98

3.2 Unix操作系统 99

3.2.1 Unix发展过程 99

3.2.2 Unix系统的特点 100

3.2.3 Unix结构 101

3.2.4 Unix Shell 101

3.2.5 Unix系统登录与退出 101

3.3 Linux操作系统 102

3.3.1 Linux的诞生 103

3.3.2 自由软件运动Linux 103

3.3.3 Linux的特点 104

3.3.4 Linux的组成 105

习题 106

第三部分 数据库基础 110

第1章 数据库技术基础 110

1.1 数据库基本概念 110

1.1.1 信息、数据与数据处理 110

1.1.2 数据库技术的产生与发展 111

1.1.3 数据库、数据库系统、数据库管理系统 115

1.2 数据模型 116

1.2.1 数据模型的概念 116

1.2.2 数据模型的要素 117

1.2.3 概念模型——E—R模型 117

1.2.4 常用的数据结构模型 119

1.3 数据库系统的模式结构 122

1.3.1 数据库系统的三级模式结构 122

1.3.2 数据库系统的其他模式结构 123

第2章 关系数据库系统 125

2.1 关系数据库系统概述 125

2.1.1 关系数据库系统 125

2.1.2 关系数据模型 125

2.2 关系模型的数据结构 126

2.2.1 关系的数学定义 126

2.2.2 关系模型的数据结构和基本术语 126

2.2.3 关系模型的特点 128

2.3 关系代数 128

2.3.1 传统的集合运算 128

2.3.2 专门的关系运算 129

2.4 关系数据库的规范化理论 132

2.4.1 关系模型的完整性约束 132

2.4.2 函数依赖 133

2.4.3 范式 133

2.5 数据库设计 134

2.5.1 系统需求分析 135

2.5.2 概念结构设计 135

2.5.3 逻辑结构设计 136

2.5.4 物理结构设计 136

第3章 关系数据库标准语言SQL 139

3.1 SQL概述 139

3.1.1 结构化查询语言SQL 139

3.1.2 SQL的特点 139

3.1.3 SQL数据库的体系结构 140

3.2 SQL的数据定义 141

3.2.1 基本表 141

3.2.2 索引 143

3.3 SQL的数据查询和操纵 143

3.3.1 SQL的查询语句 143

3.3.2 SQL的修改语句 151

3.4 视图 152

3.4.1 定义视图 152

3.4.2 查询视图 153

3.4.3 修改视图 154

3.4.4 视图的作用 154

3.5 SQ L的数据控制语句 154

3.5.1 授予权限 155

3.5.2 收回权限 155

习题 156

第四部分 面向对象程序设计 160

第1章 面向对象的基本思想 160

1.1 面向过程程序设计的缺点 160

1.2 面向对象方法的四个要点 160

1.3 面向对象系统的特点 161

1.4 面向对象方法的四个优点 162

第2章 类和对象 163

2.1 类的定义 163

2.1.1 类的定义格式 163

2.1.2 访问限制符Public、Private、Protected 165

2.1.3 数据成员(Data Member) 166

2.1.4 成员函数(Member Function) 167

2.2 类的实现 168

2.3 C++++的输入输出 170

2.3.1 C++++的流 170

2.3.2 流类库 172

2.4 对象 172

2.4.1 对象的定义格式 172

2.4.2 访问类对象成员的方法 172

2.5 对象指针 174

第3章 构造函数和析构函数 177

3.1 对象的初始化问题 177

3.2 构造函数(Constructor) 177

3.3 重载构造函数 180

3.4 析构函数(Destructor) 182

3.5 对象的初始化 183

第4章 对象数组 185

4.1 对象数组的定义 185

4.2 对象数组的初始化 187

4.3 对象数组的赋值 188

4.4 对象指针 190

第5章 对象与函数 193

5.1 对象作为函数的参数 193

5.2 对象的存储地址作为函数的参数 194

5.3 引用的概念 195

5.4 引用作为函数的参数 197

5.5 函数的返回值是引用 199

第6章 继承与派生 202

6.1 继承的概念 202

6.2 派生类的定义 202

6.2.1 派生类的定义格式 203

6.2.2 成员的访问控制 206

6.3 派生类的初始化 207

6.4 多继承 208

6.5 虚拟继承 209

6.6 虚函数 210

第7章 运算符重载 213

7.1 运算符重载的提出 213

7.2 重载运算符 215

第8章 友元函数 220

8.1 需要友元函数的原因 220

8.2 友元函数 220

习题 224

第五部分 软件工程 228

第1章 软件工程概述&. 228

1.1 软件工程的定义 228

1.1.1 软件与软件危机 228

1.1.2 软件工程 230

1.2 软件的生命周期 231

1.3 软件工程模型 232

1.3.1 瀑布模型 233

1.3.2 快速原型模型 234

1.4 软件工程的七条基本原理 234

第2章 结构化软件开发 236

2.1需求分析 236

2.1.1 系统模型分析 236

2.1.2 需求规格说明 240

2.1.3 需求分析的评审 241

2.2 软件设计 241

2.2.1 软件设计的概念和原理 241

2.2.2 软件结构的图形表示工具 244

2.2.3 面向数据流的设计方法 246

2.2.4 详细设计 249

2.3 编码 251

2.4 软件测试 252

2.4.1 软件测试原则 252

2.4.2 软件测试方法和步骤 253

2.4.3 测试用例的设计 254

2.5 软件维护 257

第3章 面向对象软件开发 259

3.1 面向对象方法概述 259

3.1.1 结构化方法的缺点 259

3.1.2 面向对象方法的特点 259

3.1.3 面向对象方法的生命周期 260

3.2 面向对象的分析 261

3.2.1 需求陈述 261

3.2.2 建立对象模型 262

3.2.3 建立动态模型 264

3.2.4 建立功能模型 265

3.2.5 定义服务 265

3.3 面向对象的设计 266

3.3.1 问题域部分的设计 266

3.3.2 用户界面部分的设计 266

3.3.3 任务管理部分的设计 266

3.3.4 数据管理部分的设计 267

习题 267

第六部分 实验训练 270

第1章 绪论 270

1.1 实验的目的 270

1.2 实验的内容 270

1.3 算法和程序是否正确 271

1.4 实验是否顺利及结果是否正确合理 271

1.5 上机实验报告的书写 271

第2章 栈和队列的应用 272

第3章 二叉树的应用 275

第4章 查找和排序 277

第5章 操作系统应用训练 279

第6章 数据库设计与应用 282

第7章 软件工程应用实例 283

参考文献 287

返回顶部