数据结构第十二章文件.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构第十二章文件.ppt

数据结构 第十二章 文件 12.1 有关文件的基本概念 文件:是大量记录的集合。习惯上称存储在主存储器(内存储器)中的记录集合为表,称存储在二级存储器(外存储器)中的记录集合为文件。 数据项:是文件中可使用的、不可分的的最小数据单位。 属性:记录中所有非关键字的数据项,称为记录的属性。 文件类别 按记录的类型不同可分成: 操作系统的文件:操作系统中的文件仅是一维的连续的字符序列,无结构、无解释。 数据库文件:数据库中的文件是带有结构的记录的集合。这类记录是由一个或多个数据项组成的集合,它也是文件中可存取的数据的基本单位。 按记录中关键字的多少数据库文件可分成: 单关键字文件:文件中记录只有一个唯一标识记录的主关键字。 多关键字文件:文件中记录除了含有一个主关键字外,还含有若干个次关键字。 12.1 有关文件的基本概念 按记录含有信息的长度不同可分成: 定长记录文件:文件中每个记录含有的信息长度相同。 不定长记录文件:文件中每个记录含有的信息长度不等。 记录的逻辑结构和物理结构 记录的逻辑结构:是指记录在用户或应用程序员面前呈现的方式,是用户对数据的表示和存取方式。着眼于用户使用方便。 记录的物理结构:是数据在物理存储器上存储的方式,是数据的物理表示和组织。着眼于提高存储空间的利用率和减少存取记录的时间。 物理记录和逻辑记录之间可能存在下列三种关系: 一个物理记录存放一个逻辑记录; 一个物理记录包含多个逻辑记录; 多个物理记录表示一个逻辑记录。 12.1 有关文件的基本概念 12.1 有关文件的基本概念 文件的操作:主要有两类,即检索与修改 文件的检索:主要有三种方式: 顺序存取:存取下一个逻辑记录。 直接存取:存取第i个逻辑记录。 按关键字存取:给定一个值,查询一个或一批关键字与给定值相关的记录。对数据库文件可以有如下4种查询方式: 简单询问:查询关键字等于给定值的记录。 区域询问:查询关键字属某个区域内的记录。 函数询问:给定关键字的某个函数。 布尔询问:以上3种询问用布尔运算组合起来的询问。 文件的修改:文件的修改包括: 插入一条记录; 删除一条记录 更新一条记录。 12.1 有关文件的基本概念 文件的操作有实时和批量两种处理方式 实时操作要求有较短的应答响应时间,在接受指令后尽可能快地完成检索或修改任务。 批量的文件处理则允许较长反馈时间。用户可以根据需求选择不同的文件处理方式。批量处理方式可减少更新操作的代价 例如,银行的帐户系统需实时检索,但可进行批量修改,即可以将一天的存款和提款记录在一个事务文件上,在一天的营业之后再进行批量处理。 12.1 有关文件的基本概念 文件的物理结构 文件在存储介质(磁盘或磁带)上的组织方式。 文件逻辑组织形式: 顺序结构的定长记录; 顺序结构的变长记录; 按关键码存取的记录。 文件物理组织方形式: 顺序文件 散列文件 索引文件 倒排文件 12.2 顺序文件 定义:顺序文件(Sequential File):是记录按其在文件中的逻辑顺序依次进入存储介质而建立的,即顺序文件中物理记录的顺序和逻辑记录的顺序是一致的。 连续文件:次序相继的两个物理记录在存储介质上的存储位置是相邻的顺序文件。 串联文件:物理记录之间的次序由指针相链表示的顺序文件。 特点:顺序文件是根据记录的序号或记录的相对位置来进行存取的文件组织方式。它的特点是: 存取第i个记录,必须先搜索在它之前的i-1个记录。 插入新的记录时只能加在文件的末尾。 若要更新文件中的某个记录,则必须将整个文件进行复制。 12.2 顺序文件 顺序文件的操作:一般由三种不同的方法: 顺序存取是从文件的第一个记录开始依次顺序进行存取。这种方法存取效率很高。 随机存取是希望对指定的记录直接进行存取。但是这种要求对于顺序文件来说,是极不方便的,存取效率很低。 按关键字存取是按记录的关键字值进行存取。这种方法对于顺序文件来讲,也需要从文件的第一个记录开始进行查找,因此,在一般情况下,存取效率不高。 12.2 顺序文件 批处理算法实现 批处理的示意算法如教材p310的算法12.1所示。算法中用到的各符号的含义说明如下: F:主文件; G:事务文件; H:新主文件。 它们都按关键字递增排序。事务文件的每个记录中,增设一个代码以示修改要求,其中: I:表示插入; D:表示删除; U:表示更改。 12.2 顺序文件 12.2 顺序文件 分析批处理算法的时间 假设主文件包含n个记录,事务文件包含m个记录。一般情况下,事务文件较小,可以进行内部排序,则时间复杂度为O(m*logm)。内部归并的时间复杂度为O(n+m),则总的内部处理时间为O(m*logm+n)。 假设所有的输入/输出都是通过缓冲区进行的,并假设缓冲区大小为s(个记录),则

文档评论(0)

magui + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8140007116000003

1亿VIP精品文档

相关文档