《软件技术基础》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:李培编著
  • 出 版 社:北京:海洋出版社
  • 出版年份:1997
  • ISBN:7502743324
  • 页数:356 页
图书介绍:

第1篇 数据结构 1

第1章 数据结构概述 1

1.1 数据结构概述 1

1.2 数据结构的意义 3

1.3 算法分析 4

第2章 线性表 8

2.1 线性表的基本概念 8

2.2 线性表的顺序存储结构 8

2.3 线性表的链式存储结构 11

2.3.1 单链表 12

2.3.2 循环链表 15

2.3.3 双链表 17

2.4 顺序表和链表的比较 19

2.5 线性表应用实例 20

2.5.1 多项式相加问题 20

2.5.2 Josephus 24

第3章 栈与队列 29

3.1 栈 29

3.1.1 栈的定义 29

3.1.2 栈的基本运算 29

3.1.3 顺序栈 30

3.1.4 链栈 32

3.2 栈与递归 34

3.3 栈应用实例 35

3.4.1 队列的定义 38

3.4.2 队列的基本运算 38

3.4 队列 38

3.4.3 顺序队列 39

3.4.4 链队列 42

3.5 队列应用实例 45

第4章 树与图 51

4.1 树 51

4.2 二叉树 52

4.2.1 二叉树概述 52

4.2.2 二叉树的存储结构 53

4.2.3 二叉树的遍历 54

4.3 树的应用实例 60

4.3.1 二叉排序树 60

4.3.2 判定树 63

4.4.1 66

4.4 图 66

4.4.2 68

4.4.3 71

第5章 查找与排序 76

5.1 查找概述 76

5.2 线性表的查找 77

5.2.1 顺序查找 77

5.2.2 二分查找 80

5.2.3 分块查找 82

5.3 树型查找 84

5.4 散列查找 86

5.4.1 散列函数的构造 87

5.4.2 处理冲突的方法 90

5.4.3 散列表的查找 92

5.5 排序概述 96

5.6.1 直接插入排序 97

5.6 插入排序 97

5.6.2 二分插入排序 99

5.6.3 希尔排序 101

5.7 选择排序 102

5.7.1 直接选择排序 102

5.7.2 堆排序 104

5.8 交换排序 107

5.8.1 起泡排序 107

5.8.2 快速排序 109

第6章 操作系统概论 113

6.1 操作系统概述 113

第二篇 操作系统 113

6.2 操作系统的特性 117

6.3 操作系统的类型 118

6.3.1 批处理系统 119

6.3.2 分时系统 121

6.3.3 实时系统 122

6.3.4 通用操作系统 124

6.3.5 单用户交互式系统 125

6.3.6 分布式操作系统 125

6.4 操作系统的结构 128

6.4.1 单体结构 129

6.4.2 模块分层结构 130

6.4.3 客户-服务器模式 132

7.1.1 程序的顺序执行 134

7.1 进程的概念 134

第7章 进程管理与处理机管理 134

7.1.2 程序的并行执行 135

7.1.3 进程的概念 136

7.2 进程的状态和转换 138

7.3 进程的表示 139

7.4 进程的控制 142

7.5 进程通讯 148

7.5.1 临界资源和临界区 148

7.5.2 进程通讯方式之一——同步与互斥 148

7.5.3 进程通讯方式之二——消息缓冲 153

7.6 死锁 154

7.6.1 死锁产生的原因和必要条件 155

7.6.2 死锁的预防 156

7.6.3 死锁的检测和解除 157

7.7 处理机管理概述 159

7.8 作业调度 162

7.9 进程调度 164

7.10 调度算法 165

7.10.1 先进先出(FCFS)调度算法 166

7.10.2 最高优先级(HPF)调度算法 167

7.10.3 轮转法RR 169

7.10.4 均衡调度算法 170

7.10.5 最短作业优先(SF)调度算法 171

7.10.6 响应比最高者优先(HRN)调度算法 171

第8章 存储管理 173

8.1 单一边续区分配 173

8.2.1 固定式分区 176

8.2 分区分配 176

8.2.2 可变式分区 177

8.3 分页分配 184

8.3.1 实现原理 184

8.3.2 分责分配的算法 187

8.3.3 虚拟存储管理 189

8.4 分段分配 191

第9章 设备与文件管理 193

9.1 设备管理 193

9.1.1 设备管理概述 193

9.1.2 设备控制方式 195

9.1.3 缓冲技术 199

9.1.4 设备分配 200

9.2.1 文件和文件系统 203

9.2 文件管理 203

9.2.2 文件结构和存取方法 208

9.2.4 文件存储间的管理 215

9.2.5 文件的共享和存取控制 216

第10章 操作系统实例——Windows95 218

10.1 Windows95操作系统概述 218

10.1.1 微机操作系统的发展过程 218

10.1.2 Windows95的性能 220

9.2.3 文件目录及其管理 221

10.1.3 基于API的Windows95结构 222

10.2 Windows95的进程与线程 224

10.2.1 Windows95的进程 224

10.2.2 Windows95的线程 225

10.3 Windows95的内存管理 227

10.3.1 Windows95的内存寻址模式 227

10.2.3 Windows95进程与线程的关系 227

10.3.2 Windows95的内存映像文件 228

10.3.3 Windows95的内存虚拟内存管理 230

10.4 Windows95的内部结构 234

10.4.1 虚拟机结构 234

10.4.2 Windows95的启动过程 239

第3篇 软件工程 241

第11章 软件工程概述 241

11.1 计算机软件概况 241

11.1.1 软件的含义 241

11.2.1 软件危机的表现形式 243

11.1.2 软件的发展 243

11.2 软件危机 243

11.2.2 软件危机产生的原因 244

11.2.3 软件危机的解决办法 246

11.3 软件工程 247

11.3.1 软年工程原理 247

11.3.2 软件工程 249

第12章 软件分析 255

12.1 定义系统目标 255

12.2 可行性研究 257

12.2.1 可行性研究的任务 257

12.2.2 可行性研究的内容 258

12.2.3 可行性研究步骤 258

12.3.1 需求分析的特点 261

12.3 需求分析 261

12.3.2 需求分析的具体任务 262

12.3.3 需求分析的实施 263

12.4 软件分析的方法 265

12.4.1 结构分析方法(SA法)概述 265

12.4.2 数据流程图 267

12.4.3 数据字典 271

12.4.4 面向对象的分析方法与应用 276

第13章 软件设计 287

13.1 软件设计的基本思想 287

13.1.1 模块化 287

13.1.2 信息隐蔽 288

13.1.3 抽象 289

13.1.4 模块独立 290

13.1.5 总体设计与模块细部设计相对分开 292

13.2 面向控制结构的设计方法 294

13.2.1 模块化程序设计 294

13.2.2 自顶向下的功能分解法 296

13.2.3 基于数据流分析的设计方法 297

13.2.4 基于数据结构的设计方法 299

13.2.5 HIPO方法 301

13.3 面向对象的设计方法 302

13.3.1 面向对象的模块分解 302

13.3.2 面向对象设计方法的特点 304

13.3.3 实例——班轮管理系统设计 304

14.1 程序设计语言 313

14.1.1 程序设计语言 313

第14章 软件编码与测试 313

14.1.2 程序设计质量 317

14.2 软件测试 321

14.2.1 软件测试的原则 322

14.2.2 软件测试方法 323

14.2.3 测试用例设计 325

14.2.4 软件测试过程步骤 333

14.3 软件调试 335

14.3.1 调试技术 336

14.3.2 调试策略 337

第15章 软件维护 340

15.1 软件维护的内容与分类 340

15.1.1 软件维护的内容 340

15.1.2 软件维护的分类 341

15.2 软件维护方法 342

15.2.1 理解程序的方法 342

15.2.2 修改程序的方法 343

15.2.3 重新确认程序的方法 347

15.3 软件维护过程 348

15.3.1 建立维护组织 348

15.3.2 编写维护报告 349

15.3.3 维护作业流程 349

15.3.4 保存维护记录 352

15.3.5 评价维护活动 353

15.4 维护的副作用 354

15.4.1 修改编码的副的作用 354

15.4.2 修改数据的副作用 355

15.4.3 文档资料的副作用 356