Professional Documents
Culture Documents
SHELL处理层 程 序
(交互式交流方式) (程序式交流方式)
系统调用接口
操作系统功能集
硬件系统
3-2 程序的 本质
程序
程序设 计
递归思 维的理解
.x x x x 顺序
分支
循环
循环1 循环2 递归
递归
图 3.2 基本逻辑 控制 规则
3-3 程序构 造的基 本方 法
—— 数据组织 + 数据处
理
数据 组织 :组织 和提 供各种 素材 ;
数据 处理 :如何 利用 素材, 加工 处理 得到成 品。
数据 组织 :
内存数 据组织:直 接使 用, 基本方 法有 简单
数据组 织、线性数 据组 织、 层次数 据组 织和
网状数 据组织 。
外存数 据组织:一 般有 文件 系统和 数据 库系
统。
简单数 据组织
适用于… …
名字与变 量存 储地址 ……
k
x
z
y
l
连续 存储— —数 组(数 列)
同名,同 类。
连续存储 ;
名字与首 地址 对应;
数据存储 位置 与编号 。
x1 x2 x3 x4 x5 x6 x7 x8 x9
x1 x2 x3 x4 x5 x6 x7 x8 x9 ……
k k+(5-1)*2
2004
3 15 35 67 66 2
H
-1
队头位置指示 队尾位置指示
出队 入队
队列头 队列尾
层次数 据组织—— 树
T1 z z
z z z
z z
树在计 算机中的表 达
z z z z
z z z z z L2 z
z z z z
L1 L3
二叉 树遍 历方式 :
(Lef t, Ro ot, Ri gh t)
前序— — Ro -L- Ri
后序— — L- Ri- Ro
中序— — L- Ro- Ri
网状数 据组织—— 图
线性结构
A B C D E
A 0 1 0 1 1
线性结构
A E B 1 0 0 0 0
D C 0 0 0 1 0
B C D 1 0 1 0 1
图 3.12 网状 数据组织
E 1 0 0 1 0
外存组 织方式—— ( 1 )文件
文件 ( file ) : 是……
文件 系统 ( file system ): 用于管理文件的软件系统。
基本 操作 步骤: 创建 、打开 、保 存、关 闭等 。
…… 记录1
…… 记录2 ……
字符1 字符2
…… 流式文件
…… 记录n
数据项
记录式文件
图 3.15 文件的基本结 构
数据处 理方法—— 算法
算法 概念 ——运 算步 骤。
算法 特点 :
有 0 个或 多个 输入 。
有一个 或多 个输出 。
确定性 。
有穷性 。
健壮性 。
算法评 价
语言方式 类计算机语言
计算机语言
流程图
算法的描述: 图形方式 N-S 图
PAD 图
表格方式
线性数 据查 找(检 索)
线性数 据排 序—— 选择 排序 、冒泡 排序等
二叉树 的遍 历(查 找) —— 静态、 动态查 找( 带插
入)
递归
回溯
线性数 据查找(检 索)
顺序 查找
二分 查找 ——针 对已 排序数 据
线性数 据排序—— 选择排序
原始数
(6)
据集 15 18 5 9 23 10 13 7 16 5 7 9 10 13 15 23 18 16
(1) 15 (7)
18 5 9 23 10 13 7 16 5 7 9 10 13 15 23 18 16
(8)
(2) 18 15 23 13 16 5 7 9 10 13 15 16 18 23
5 9 10 7
(9)
5 7 9 10 13 15 16 18 23
(3) 5 7 15 9 23 10 13 18 16
(10)
5 7 9 10 13 15 16 18 23
(4) 5 7 9 15 23 10 13 18 16
在未排序数据集 目前应该选择
(5) 5 23 15 18 16
中选择到的数据 的数据的位置
7 9 10 13
两个数据交换
线性数 据排序—— 冒泡排序
原始数
5 9 23 10 13 7 16 15 18 5 9 7 23 10 13 16 (5)
据集 15 18
(1) 15 18 5 9 23 10 13 7 16 7 9
15 18 5 7 9 23 10 13 16 (6)
(2) 15 18 5 9 23 10 13 7 16
15 18 5 7 9 23 10 13 16 (7)
7 13
5 18
(3) 15 18 5 9 23 10 7 13 16
15 5 18 7 9 23 10 13 16 (8)
7 10
5 15
(4) 15 18 5 9 23 7 10 13 16
5 15 18 7 9 23 10 13 16 (9)
7 23
18 35 65 80 18 35 65 80 18 35 65 80
7 26 7 26 7 26 动态查找
查找数据元素65
45 45 45 45
32 70 32 70 32 70 32 70
18 35 65 80 18 35 65 80 18 35 65 80 18 35 65 80
7 26 7 26 7 26 7 26 75
查找数据元素75 x 当前用于查找比较的数据元素 查找路径 x 未找到,插入
递归
环境 ——程序作用 的范 围,不
同的环 境对程 序的 构造有 不同
的要求 。
应用 ——具 体问题 的解 决方法 环境 应用
,应用 与环境 是分 不开的 ,环
境是应 用赖以 存在 的基础 。
语言 ——是一种粘 合剂 ,将应 语言
用和环 境连接 起来 。
1 程序设 计语言
文 章 程序
描 写 类、包
函 数
段 落
语 句
句 子
表达式
短 语
常量、变量
词 汇 保留字、运算符等
基本符号 基本符号
自然 语言 程序设计 语言
数据类 型
枚举类型
数据类型
数组类型
复合类型 指针类型
……
用户自定义类型
图 3.3 2 数据类 型分
类
表达式
计算 机环 境下的 表达 式分为
算术表达 式
关系表达 式
逻辑表达 式
类型转 换 —— 不同类型 数据混
算
自动转换
隐式
计算机自 动进行
基本规则 : 根据存储 空间 大小, 由小 到大转 换
。
强制转换
显式表达
通常是将 大数据 截去 一部分 ,存 放到小 的空 间
中。
语句 —— 程序组成的 基本单位
注释语句
运算赋值 语句
输入 / 输出语 句
流程控制 语句
函数
某种 处理 逻辑的 抽象
成为 一个 独立于 具体 数据对 象的单 元
通过 调用 为具体 的数 据对象 服务
实现 机制 :形参 、实 参、算 法
语言种 类及其实现
面向数值计算程序
设计的高级语言
机器语言 —— 直接执 行 面向系统程
(FORTRAN)
序设计的高 面向人工智
能程序设计
汇编语言 —— 汇编 为机器 语 级语言(C)
汇编语言 的高级语言
言再执行 面向结构化程 机器
(FORTRAN)
序设计的高级 语言
高级语言 —— 编译 或解释 为 语言(ALGOL、
面向网络化环
境的对象程序
PASCAL)
机器语言 再执 行 设计的高级语
言(Java)
……
面向对象的程
序设计高级语
言(C++)
2 程序 设计环境
大规 模软 件开发 的效 率、成 本问 题。