数据结构——文件 (3590kb).pptVIP

  • 0
  • 0
  • 约4.07千字
  • 约 19页
  • 2017-09-02 发布于天津
  • 举报
数据结构——文件 (3590kb)

山东大学管理学院 戚桂杰 姚云鸿 数据结构 第8章 文件 山东大学管理学院 * 山东大学管理学院 戚桂杰 姚云鸿 * 本章内容 文件概述 顺序文件 直接文件 索引文件倒排文件 * 山东大学管理学院 戚桂杰 姚云鸿 * § 1 文件概述 一、 文件的概念 域(Field)是数据的基本单位,又称为字段或数据项。域通常用于描述数据对象的属性,不可分割的域含有一个简单的值。 记录(Record)是一组相关域的集合,它可以看作是应用程序的一个单元。根据设计的不同,记录可以是固定长或可变长。如果记录中某些域的长度是可变的,则该记录就是可变长度的记录。 文件(File)是由大量性质相同的记录组成的集合,它被应用程序看作是一个实体。文件有一个惟一的名字,可以被创建或删除。 数据库(Database)是一组相关的数据,它的本质特征是数据单元间存在明确的关系,并且设计成可供许多不同的应用程序使用。数据库自身是由一种或多种不同类型的文件组成。 * 山东大学管理学院 戚桂杰 姚云鸿 * 二、文件的逻辑结构 文件的逻辑结构是用户能观察到的,可加以处理的数据集合。 文件的逻辑结构分两种形式:一种是流式文件,另一种是记录式文件。 记录成组与分解处理 流式文件指文件内的数据不再组织成记录,只是连续的字符序列。 记录式文件是指若干逻辑记录(按信息在逻辑上的独立含意划分的一个信息单位)的集合。 逻辑记录1 逻辑记录2 逻辑记录3 物理记录 逻辑记录 用户缓冲区 系统缓冲区 * 山东大学管理学院 戚桂杰 姚云鸿 * 三、 文件的物理结构 构造文件物理结构的方法:计算法和指针法。 四、文件的操作 记录检索 记录插入 记录删除 记录更新 文件排序 实现原理是设计映射算法,通过对记录关键字的计算转换成对应的物理块地址,从而找到所需记录。 置专门指针,指明相应记录的物理地址或表达各记录之间的关联。 * 山东大学管理学院 戚桂杰 姚云鸿 * § 2 顺序文件 分块块插值查找 算法: (1)初始化 low = 1;high=N。 (2)反复执行下面操作,直到high<low成立 (a)i = (b)读取第i个物理块,获得Li和Hi (c)分下面三种情况执行 Li≤K≤Hi时,查找成功,第i个物理块即为所求; K>Hi时,执行low = i+1; K<Li时,执行high = i-1; (3)查找失败,算法结束。 low:查找范围内的最小物理块号; high: 查找范围内的最大物理块号; Li:第i个物理块内的记录的最小关键字; Hi:第i个物理块内的记录的最大关键字 * 山东大学管理学院 戚桂杰 姚云鸿 * § 3 直接文件(散列文件) 直接文件:记录在介质上的位置是通过对记录的键施加变换而获得相应地址。 一、桶散列 (静态散列) 基本思想: 把文件的记录通过散列函数H分别存储在许多存储桶中,每个存储桶包含一个或多个物理块,一个存储桶中的物理块用指针连接形成链表,每个物理块存放若干记录。如果一个桶溢出,即它容纳不下所有属于它的记录,那么可以给该存储桶增加一个溢出块链表以存放更多的记录。 操作:以i=H(key) 为依据完成查找、插入、删除、更新等操作。 * 山东大学管理学院 戚桂杰 姚云鸿 * § 3 直接文件(散列文件) 二、 可扩展散列(动态散列文件) 可散列文件的组织方式:散列函数H把关键字key转换成一个定长的二进制位串k′(伪关键字),取k′前i位二进制数(设为k〞)作为存储桶目录表中的目录项号,即表示目录表中第k〞个目录项,目录项中的指针指向的物理块就是具有关键字key的记录所在的物理块;存储桶目录项的个数为2i。 i 确定记录在该物理块中的成员资格 的二进制位串的位数 * 山东大学管理学院 戚桂杰 姚云鸿 * 查找操作 查找关键字为K的记录,先计算出H(K),取出这一二进制位串的前i位(设为k〞),并找到序号为k〞的存储桶目录项。根据此目录项的指针找到物理块B。 插入操作 为了插入关键字为K的记录,先其所在的物理块,若该物理块中有空闲空间,我们就把新记录存入,插入操作完成。如果B中没有空闲空间,那么根据数字i的不同有两种可能: 如果j=i,那么我们必须先将i加1,使存储桶目录项个数增加一倍,即2i+1。在新存储桶目录表中,序号为k〞0和k〞1(分别用0和1扩展k〞)的项都指向原k〞目录项指向的物理块。 * 山东大学管理学院 戚桂杰 姚云鸿 * 插入操作 如果j<i(j的值可在每个物理块的“小凸块”中找到),那么不必对存储桶目录表做任何变化。按下面规则操作: (a)将物理块B分裂成两个存储块。 (b)根据记录关键字的散列值的

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档