第3章 算法与数据结构(第2版)--fb

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据是指由有限的符号组成的元素的集合,结构则是元 素之间的关系的集合。
数据结构是指存在着一定关系的数据元素的集合及定义 在其上的操作(运算)。
数据结构主要有三方面的内容:数据的逻辑结构;数 据的存储结构;对数据的操作(或算法)。
通常,算法的设计取决于数据的逻辑结构,算法的实 现取决于数据的存储结构。
空间复杂度:指执行这个算法所需要的内存空间。
9/23
计算机 基础
3.2 数据结构基础的基本概念
3.2.1数据结构的定义 数据是描述客观事物的信息符号的集合。 数据类型是指具有相同特性的数据的集合。
常用的数据类型有整型、Biblioteka Baidu点型、字符型等。
12:32
计算机 基础
3.2 数据结构基础的基本概念
3.2.1数据结构的定义 数据结构的定义
12:32
计算机 基础
3.2 数据结构基础的基本概念
顺序存储结构是把逻辑上相邻的 结点(也就是数据元素)存储在 物理上相邻的存储单元里。 结点之间的关系由存储单元的邻 接关系来体现。
例如,数据元素a1,a2,…, an的顺序存储结构如右图所示。
a1 a2 …
an
图 顺序存储结构
12:32
计算机 基础
3.2 数据结构基础的基本概念
3.2.2 数据结构的图形表示
数据元素之间最基本的关系是前后件关系。前后 件关系,都可以用图形来表示。用中间标有元素 值的方框表示数据元素,一般称之为数据结点, 简称为结点。对于每一个二元组,用一条有向线 段从前件指向后件。
3.1 算法
3.算法设计基本方法
计算机解题的过程实际上是在实施某种算法,这 种算法称为计算机算法。
常用的几种算法设计方法有列举法、归纳法、递 推法、递归法、减半递推技术和回溯法。
8/23
计算机 基础
3.1 算法
3.1.2算法复杂度
算法复杂度包括算法的时间复杂度和算法的空间 复杂度。
时间复杂度: 指算法执行过程中所需要的基本运算 次数。
课程名称:计算机基础 授课班级:
章节名称 教学
目的与要求
教学内容
重点
第3章 算法与数据结构(3.1-3.3)
了解算法的基本概念; 掌握数据结构基础的基本概念; 掌握线性表及其顺序存储结构。
3.1 算法 3.2 数据结构基础的基本概念 3.3 线性表及其顺序存储结构
1、算法的特征、复杂度; 2、线性表的基本概念与基本操作
一个算法有0个或多个输入
5/23
计算机 基础
3.1 算法
2.算法的基本要素
一个算法通常由两种基本要素组成:
一是对数据对象的运算和操作; 二是算法的控制结构,即运算或操作间的顺序。
(1)算法中对数据的运算和操作
4类基本的运算和操作: ①算术运算:主要包括加、减、乘、除等运算。 ②逻辑运算:主要包括“与”、“或”、“非”等运算。 ③关系运算:主要包括“大于”、“小于”、“等于”、“不等 于”等运算。 ④数据传输:主要包括赋值、输入、输出等操作。
12:32
计算机 基础
3.2 数据结构基础的基本概念
1. 数据的逻辑结构
数据的逻辑结构就是数据元素之间的逻辑关系。
两两数据元素之间的关系用前后件关系(或直接前驱 与直接后继关系)来描述。
数据的逻辑结构可分为以下4大类:
(1)集合:数据元素之间的关系只有“是否属于同一个集合”。
(2)线性结构:数据元素之间存在线性关系,即最多只有一个前 导和后继元素。
索引存储是用结点的索引号来确定结点存储地址 ,其优点是检索速度快,缺点是增加了附加的索 引表,会占用较多的存储空间。
散列存储是根据结点的值确定它的存储地址,优 点是检索、增加和删除结点的操作速度快,缺点 是采用不好的散列函数时可能出现结点单元的碰 撞,而需要附加时间和空间开销。
12:32
计算机 基础
3.2 数据结构基础的基本概念
链接存储结构是将结点所占的存储单元分为两部 分,一部分存放结点本身的信息,即数据项。另 一部分存放该结点的后续结点所对应的存储单元 的地址,即为指针项。
例如,数据元素a1,a2,…,an的链接存储结 构如下图所示:
图 链接存储结构
12:32
计算机 基础
3.2 数据结构基础的基本概念
难点
算法的复杂度
作业
P120 一、填空题:4 二、选择题:2
教学手段
ppt课件,讲练结合
教学过程(组织与 介绍本次课重点、难点→讲解本次课内容→小结→作业→课
方法)
堂练习。
第3章 算法与数据结构
3.1 算法 3.2 数据结构基础的基本概念 3.3 线性表及其顺序存储结构
12:32
计算机 基础
3.1 算法
3.1.1 算法的基本概念
定义:
算法是指对解题方案的准确而完整的描述,是解 决问题的操作步骤。
注意: 算法不等于数学上的计算方法,也不等于程序。
3/23
计算机 基础
3.1 算法
传统的算法表示方法为图 形法,如流程图。流程图 即通过箭头相互连接的几 何图形的表达方法。
例如,求1到10的和的步 骤(算法)使用流程图如 图所示。
(3)树状结构:据元素之间呈层次关系,即最多只有一个前导和 多个后继元素。
(4)图状结构:数据元素之间的关系为多对多的关系。
12:32
计算机 基础
3.2 数据结构基础的基本概念
2. 数据的存储结构
数据的存储结构是数据的逻辑结构在计算机存 储空间中的存放形式。
数据的存储结构也称为数据的物理结构。
数据的存储结构的四种形式: 顺序、链接、索引、散列
6/23
计算机 基础
3.1 算法
2.算法的基本要素 一个算法通常由两种基本要素组成:
一是对数据对象的运算和操作; 二是算法的控制结构,即运算或操作间的顺序。
(2)算法的控制结构
算法中各操作之间的执行顺序称为算法的控制结构。 一个算法一般都可以用顺序、选择、循环三种基本控制 结构组合而成。
7/23
计算机 基础
计算机程序是算法在计算 机中的实现。
开始 0→sum 1→n
n
n≤10
y sum+n→sum
n+1→n
输出sum
结束
12:32
计算机 基础
3.1 算法
3.1.1 算法的基本概念
1.算法的基本特征
(1)可行性(Effectivenness) 算法在特定的执行环境中执行应当能够得出满意的结果,即必须有 一个或多个输出。 (2)确定性(Definiteness) 算法的确定性是指算法中的每一个步骤都必须是有明确定义的,不 允许有模棱两可的解释,也不允许有多义性。 (3)有穷性(Finiteness) 算法中的操作步骤为有限个,且每个步骤都能在有限时间内完成。 (4)拥有足够的情报
相关文档
最新文档