数据结构和软件工程基础课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《数据结构和软件工程基础课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 软件工程 基础 课件
- 资源描述:
-
1、11 数据与文件2 算法与数据结构3 软件开发基础 数据结构和软件工程基础 知识21.1 1.1 数据组织的层次体系数据组织的层次体系1.2 1.2 基本文件组织方式基本文件组织方式 1 数据与文件3 任何系统都有一个数据组织的层次体系。在该层次体系中共分为位、字符、数据元、记录、文件和数据库6层,每一后继层都是其前驱层数据元组合的结果,最终实现一个综合的数据集合。 数据组织的层次体系4 1.字符 一个字符在计算机中占8位,即一个字节。一个计算机系统可以使用不只一种编码体制。 2.数据元 在数据的层次体系中,数据元是最低一层的逻辑单位,为了形成一个逻辑单位,需要将若干位和若干字节组合在一起。
2、3.记录 将逻辑上相关的数据元组合在一起就形成一个记录。例如一个学生记录(学号、姓名、性别、院系、班级)中包含的若干数据元以及作为学生记录的一个值的若干数据项。记录是数据库中存取的最低一层的逻辑单位。 4.文件 文件是有名字的存储在某种介质上的一组信息的集合,即文件由信息和介质组成。 5.数据库 数据库是一组有序数据的集合。 5 文件是大量性质相同的记录的集合,文件存储在外存储器中,如磁盘、光盘、磁带等。记录是文件中可存取的基本数据单位,它由若干数据项组成,而数据项是文件中最小的数据单位,通常由一个或多个数字位或字符组成,用来表示记录的具体数值。文件在外存储器上组织方式的类型主要有顺序文件、索
3、引文件和直接存取文件。基本文件组织方式6 1. 顺序文件 顺序文件是按从头到尾的顺序进行存取操作的,文件中的信息就像在一条长长的队列中排列一样。 顺序文件是最简单的文件,文件的各个记录按逻辑顺序存放在外存的连续区中,即顺序文件中物理记录的顺序和逻辑记录的顺序是一致的。如果文件按关键字有序输入,则形成的顺序文件称为顺序有序文件;否则称为顺序无序文件。 顺序文件是根据记录的序号或记录的相对位置来进行存取的,其特点是当存取第i个记录时,必须先搜索在它之前的i1个记录;插入新的记录时,只能加在文件的末尾;若要更新文件中的某个记录,则必须将整个文件进行复制。顺序文件的主要优点是存取速度快,因此多用于顺序
4、存取设备(如磁带)。7 2. 索引文件 索引文件是指在主文件之外再建立一个表示关键字与其物理记录之间对应关系的表,称为索引表。索引表与主文件共同构成索引文件。索引文件的检索分成两步完成,首先将索引表读入内存,再根据索引表所指示的物理地址将记录所在的数据块读人内存进行检索,如图所示。8 3. 直接存取文件直接存取文件又称为哈希(Hash)文件或散列文件,即利用哈希函数及其处理冲突的方法,把文件散列到外存上,通常是磁盘上。对直接存取文件进行查找时,首先根据哈希函数求出哈希地址,再将数据读入内存,然后在内存中进行顺序查找。直接存取文件不能进行顺序查找,但插入数据方便,存取速度快。92.1 2.1 算
5、法的基本概念算法的基本概念2.2 2.2 数据结构基础数据结构基础2.3 2.3 栈与队列的基本概念栈与队列的基本概念2.4 2.4 排序与查找基本策略排序与查找基本策略2 算法与数据结构10 1. 算法的定义 算法是一组明确的可执行步骤的有序集合。算法的概念要求步骤集是有序的,这就要求算法中的各个步骤必须拥有定义完好的顺序执行结构。 算法的基本概念11 算法的特征: (1) 有穷性,一个算法必须保证执行有限步之后结束; (2) 确定性,算法的每一步骤必须有确定的定义; (3) 输入,一个算法有0个或多个输入,以描述运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件; (4) 输出,一
6、个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的; (5) 可行性,算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。12 正确性 精确 简单 抽象分级。 算法的要素13 一个算法的表示需要使用一些语言形式。传统的算法表示方法为图形法,如流程图和NS图 。算法的表示14 算法是一组逻辑步骤,计算机程序是使用一些特殊编程语言表达的某些算法。可能几种不同的计算机程序,每一种用不同的编程语言实现,但遵循的逻辑步骤是相同的。它都表达同样的算法,但是它们不是同样的程序。 算法与计算机程序15 算法具有5个特性:有穷性、确定性、可行性、输入和输出。 评价一个
7、算法一般从正确性、运行时间、占用空间和简单性4个方面进行。 算法的评价16 1. 数据结构的定义 数据结构研究和讨论三个方面的问题:数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;对各种数据结构进行的运算。 数据结构指相互有关联的数据元素的集合。比如向量和矩阵。 2. 数据的逻辑结构:反映数据元素之间逻辑关系的数据结构。 数据是指由有限的符号组成的元素的集合,结构则是元素之间的关系(前驱和后继)的集合。用二元组表示:B=(D,R) 2.2 数据结构基础17一年四季的数据结构表示:一年四季的数据结构表示: B=(D,
8、R) B=(D,R) D= D=春,夏,秋,冬春,夏,秋,冬 R= R=(春,夏),(夏,秋),(秋,冬)(春,夏),(夏,秋),(秋,冬) 家庭成员的数据结构表示家庭成员的数据结构表示 B=(D,R) B=(D,R) D= D=父亲,儿子,女儿父亲,儿子,女儿 R= R=(父亲,儿子),(父亲,女儿)(父亲,儿子),(父亲,女儿) 18数据结构的图形表示:春夏秋冬父亲女儿儿子19线性结构空的数据结构:线性结构(线性表):非空数据结构;有且只有一个根结点;每个结点最多一个前件,也最多一个后件;在一个线性结构中插入或删除任何一个结点后还应该是线性结构。非线性结构:203、数据的存储结构数据的逻辑
9、结构在计算机存储空间中的存放形式称为数据的存储结构常用的存储结构有顺序、链接、索引和散列四种结构。顺序存储结构 21链接存储结构 22 (2) 树形存储结构 二叉树,用连续的存储单元保存结构如图: 23 (3) 图形存储结构244. 数据结构、数据类型和抽象数据类型 数据结构是计算机科学与技术领域常用的术语。它用来反映一个数据的内部构成 。 数据是按照数据结构分类的,具有相同数据结构的数据属同一类。同一类数据的全体称为数据类型。 抽象数据类型的含义可理解为数据类型的进一步抽象。即把数据类型和数据类型上的运算捆在一起,进行封装。 25 (1) 数组结构 数组结构中数据元素的个数固定,它们之间的逻
10、辑关系由数据元素的序号(或叫数组的下标)来体现。 (2) 记录结构 记录结构是另一种常用的数据结构。它的特点与数组结构一样,数据元素的个数是固定的。 基本数据结构26 l. 线性表 线性表是n(n=0)个元素al,a2,an的有限序列,记为(a1,a2,an)。 数据元素具有相同的数据类型。若线性表非空,第一个元素无前驱;最后一个元素无后继;其他元素仅有一个直接前驱和一个直接后继。 线性表的顺序存储结构:在程序设计时常定义一个一维数组来表示线性表的顺序存储空间2.3 栈与队列的基本概念27线性表在顺序存储结构下,可进行各种处理。主要的运算:l插入l删除l查找l排序l分解l合并l复制l逆转28
展开阅读全文