1 / 15
文档名称:

二公共基础1 数据结构和算法.pdf

格式:pdf   大小:187KB   页数:15页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

二公共基础1 数据结构和算法.pdf

上传人:阳仔仔 2021/8/15 文件大小:187 KB

下载得到文件列表

二公共基础1 数据结构和算法.pdf

文档介绍

文档介绍:第1章数据结构与算法 重点 10-12 分
1. 算法的基本概念
算法的定义:是对特定问题求解步骤的一种描述,是指令的有限序列。
程序是算法在计算机中的实现。
(1)算法具有 4个基本特征: 可行性、 确定性、 有穷性、 拥有足够的情报。
( 2)算法的基本运算和操作包括:算术运算、逻辑运算、关系运算、数
据传输。
(3)算法的 3种基本控制结构是:顺序结构、选择结构、循环结构。
(4)算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术、
回溯法。
算法的描述方法:流程图、程序设计语言(类语言或称伪代码)、自然语言。
(5)指令系统:指的是一个计算机系统能执行的所有指令的集合。
2. 算法复杂度
算法复杂度包括时间复杂度和空间复杂度。注意两者的区别,无混淆。
空间复杂度:执行这个算法所需要的内存空间。
时间复杂度 :执行算法所需要的计算工作量。
时间复杂度的度量方法:
算法的运行时间 = 算法中所有语句的执行次数(频度)之和
3. 数据结构研究的 3个方面
① 逻辑结构:数据集合中各数据元素之间所固有的逻辑关系;
② 存储结构:在对数据进行处理时,各数据元素在计算机中的存储关系;
③ 对各种数据结构进行的运算。
逻辑结构 :是对数据元素之间的逻辑关系的描述, 它可以用一个数据元素的
集合和定义在此集合中的若干关系来表示。数据的逻辑结构有两个要素:一
是数据元素的集合,通常记为 D ;二是 D 上的关系,它反映了数据元素之间
的前后件关系,通常记为 R。一个数据结构可以表示成: B=(D,R)
包括线性结构 (如线性表、栈、队列、 串、数组、广义表) 和非线性结构(如
树、图)。数据的逻辑结构分类为:
(2) 存储结构 :数据的逻辑结构在计算机存储空间中的存放形式称为数据
的存储结构(也称数据的物理结构)。
由于数据元素在计算机存储空间中的位置关系可能与逻辑关系不同,因
此,为了表示存放在计算机存储空间中的各数据元素之间的逻辑关系(即前
后件关系),在数据的存储结构中,不仅要存放各数据元素的信息,还需要
存放各数据元素之间的前后件关系的信息。
一种数据的逻辑结构根据需要可以表示成多种存储结构, 常用的存储结构
有顺序、链接等存储结构。
顺序存储方式 主要用于线性的数据结构, 它把逻辑上相邻的数据元素存储
在物理上相邻的存储单元里, 结点之间的关系由存储单元的邻接关系来体现。
链式存储结构 就是在每个结点中至少包含一个指针域,用指针来体现数据元
素之间逻辑上的联系。
(3) 运算:对数据元素施加的操作,如插入、删除、修改、查找、排序等
线性结构 (线性表 )
(1)如果一个非空的数据结构满足下列两个条件:
①有且只有一个根结点②每个结点最多有一个前件,也最多有一个后件。
则称该数据结构为线性结构又称线性表。 在一个线性结构中插入或删除任
何一个结点后还应是线性结构。栈、队列、串等都为线性结构。
如果一个数据结构不是线性结构,则称之为非线性结构。 数组、广义表 、
树和图等数据结构都是非线性结构。
(2)线性表的顺序存储结构具有以下两个基本特点:
① 线性表中所有元素所占的存储空间是连续的;
② 线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。
元素 ai 的存储地址为: ADR(ai)=ADR(a1)+(i-1)k , ADR(a1) 为第一个
元素的地址, k 代表每个元素占的字节数。
顺序存储结构的优缺点。
优点:逻辑相邻,物理相邻;可随机存取任一元素;存储空间使用紧凑,
存储密度 =1 。
缺点:插入、 删除操作需要移动大量的元素; 预先分配空间需按最大空间
分配,利用不充分;表容量难以扩充。
(3)顺序表的运算有查找、插入、删除