《计算机软件技术基础》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:王海燕主编;罗静,赵永熹副主编
  • 出 版 社:北京:航空工业出版社
  • 出版年份:2012
  • ISBN:9787802439191
  • 页数:327 页
图书介绍:本书针对非计算机专业的大学生、研究生以及科技工作者与研究人员对计算机软件应用技术的需要,介绍了计算机软件技术的基础知识、方法与实用技术。主要内容包括:基本数据结构及其运算、查找与排序技术、数据库设计技术、软件的设计与开发技术和操作系统原理等基础理论知识。

第1章 概论 1

1.1数据结构的基本概念 1

1.1.1数据的逻辑结构 2

1.1.2数据的存储结构 2

1.1.3数据的运算 3

1.2算法描述 3

1.3算法分析 4

1.3.1时间复杂度 4

1.3.2空间复杂度 5

思考与练习 6

第2章 线性数据结构 7

2.1线性表 7

2.1.1线性表的逻辑结构 7

2.1.2线性表的顺序存储结构 7

2.1.3线性表的链式存储结构 12

2.2栈 22

2.3队列 27

2.4数组 34

思考与练习 37

第3章 非线性数据结构 39

3.1树 39

3.1.1树的概念 39

3.1.2二叉树 40

3.1.3树的存储结构和遍历 46

3.1.4树、森林与二叉树的转换 47

3.1.5哈夫曼树 49

3.2图 52

3.2.1概念 52

3.2.2存储 54

3.2.3遍历 57

3.2.4最小生成树 62

思考与练习 67

第4章 查找 70

4.1线性表查找 71

4.1.1顺序查找 71

4.1.2二分查找 72

4.1.3分块查找 75

4.2哈希查找 77

4.2.1哈希表 77

4.2.2哈希函数的构造方法 78

4.2.3处理冲突的方法 79

4.2.4哈希查找 81

思考与练习 83

第5章 排序 84

5.1插入排序 84

5.1.1直接插入排序 85

5.1.2希尔排序 86

5.2交换排序 87

5.2.1冒泡排序 87

5.2.2快速排序 90

5.3选择排序 92

5.3.1直接选择排序 92

5.3.2堆排序 94

5.4归并排序 98

思考与练习 101

第6章 数据库技术概述 102

6.1信息、数据与数据处理 102

6.2数据管理技术的发展 103

6.3数据库系统的组成 106

6.4数据模型 107

6.4.1概念模型 108

6.4.2结构数据模型 110

6.5数据库系统结构 115

6.5.1数据库系统的三级模式 115

6.5.2数据库的二级映像 117

思考与练习 117

第7章 关系数据库 119

7.1关系数据结构 119

7.1.1关系的形式化定义及其有关概念 119

7.1.2关系的性质 122

7.2关系操作 123

7.2.1传统的集合运算 123

7.2.2专门的关系运算 125

7.3关系的完整性 131

7.3.1实体完整性规则 131

7.3.2参照完整性规则 132

7.3.3用户定义的完整性规则 132

7.4 SQL结构化查询语言 133

7.4.1 SQL概述 133

7.4.2数据定义功能 137

7.4.3数据查询功能 141

7.4.4数据更新功能 147

7.4.5视图 149

7.4.6数据控制功能 152

7.5关系规范化理论 154

7.5.1函数依赖 155

7.5.2范式 156

7.5.3关系模式的分解 160

思考与练习 162

第8章 关系数据库设计 165

8.1数据库设计概述 165

8.1.1数据库设计的内容 165

8.1.2数据库设计的方法 165

8.1.3数据库设计的步骤 166

8.2需求分析 168

8.2.1需求分析的任务 168

8.2.2需求分析的方法 169

8.3概念结构设计 170

8.4逻辑结构设计 174

8.4.1 E-R图向关系模型的转换 175

8.4.2数据模型的优化 176

8.5物理结构设计 177

8.6数据库实施 178

8.7数据库的运行和维护 179

思考与练习 180

第9章 软件工程概述 181

9.1软件 181

9.1.1软件的定义 181

9.1.2软件的特点 181

9.1.3软件的开发工具和开发环境 182

9.2软件工程 183

9.2.1软件危机 183

9.2.2软件工程的定义 184

9.2.3软件工程的目标和原则 185

9.3软件的生命周期 186

9.3.1软件生命周期的定义 186

9.3.2软件生命周期模型 187

9.4软件工程文档 192

9.4.1软件工程文档的分类 192

9.4.2软件工程文档的作用 193

9.4.3编制规范的软件工程文件 194

思考与练习 196

第10章 软件开发的工程化方法 199

10.1可行性研究分析 199

10.2软件需求分析 200

10.2.1软件需求分析的任务和过程 200

10.2.2软件需求分析的原则 201

10.2.3结构化分析方法 203

10.3软件设计 210

10.3.1软件设计概述 210

10.3.2软件结构化设计方法 213

10.3.3详细设计方法 219

10.3.4面向对象的程序设计概述 224

10.4软件编码 227

10.4.1程序设计语言 228

10.4.2编程风格(Programming Style) 230

思考与练习 232

第11章 软件测试与维护 235

11.1软件测试 235

11.1.1软件测试概述 235

11.1.2软件测试策略 238

11.1.3常用的测试方法 242

11.2软件维护 246

11.2.1软件维护概述 246

11.2.2软件维护的步骤与方法 248

11.2.3软件维护的副作用 249

思考与练习 249

第12章 软件开发的管理 252

12.1软件配置管理 252

12.1.1软件管理的危机 252

12.1.2软件配置管理的定义 253

12.1.3软件配置管理活动 253

12.2质量管理 255

12.2.1软件质量的定义 255

12.2.2软件质量要素 256

12.2.3软件质量评价准则 257

12.2.4软件质量度量 258

12.2.5全面质量管理 258

12.3软件风险管理 260

12.3.1什么是风险 260

12.3.2风险管理 261

12.3.3风险识别 261

12.3.4风险估计 263

12.3.5风险评估 264

12.3.6风险管理策略 266

12.3.7风险驾驭和监控 266

12.4人员管理 268

12.5文档管理 269

思考与练习 269

第13章 操作系统 271

13.1概述 271

13.1.1操作系统的作用 271

13.1.2操作系统功能 272

13.1.3操作系统的发展过程 273

13.1.4操作系统的特点 276

13.2进程管理 277

13.2.1多道程序设计的概念 277

13.2.2进程 279

13.2.3进程控制 281

13.2.4进程调度 282

13.2.5进程通信 286

13.2.6线程 289

13.3存储管理 292

13.3.1存储管理的基本概念及功能 292

13.3.2分区存储管理 294

13.3.3页式存储管理 297

13.3.4段式存储管理 299

13.3.5段页式存储管理方式 300

13.3.6虚拟存储管理 301

13.3.7请求页式存储管理 303

13.4设备管理 308

13.4.1设备管理概述 308

13.4.2 I/O控制方式 310

13.4.3设备分配 311

13.4.4 I/O传输控制 312

13.4.5磁盘调度 313

13.5文件管理 314

13.5.1文件管理的基本概念 314

13.5.2文件结构及存取方式 316

13.5.3文件目录 318

13.5.4文件存储空间的管理 320

13.5.5文件存取控制 321

13.6作业管理 321

13.6.1操作系统用户界面 321

13.6.2作业的基本概念 322

13.6.3作业控制块和后备队列 323

13.6.4作业调度与作业控制 323

13.6.5 Unix操作系统简介 325

思考与练习 326

参考文献 327