常见的文件组织方式有哪几种?各有何特点? 文件上的操作有哪几种? 如何评价文件组织的效率? 答 常用的文件组织方式有顺序文件索引文件散列文件和多关键字文件 ●顺序文件的特点是它是按记录进入文件的先后顺序存放其逻辑结构和物理顺序是一致的 ●索引文件的特点是在主文件之外还另外建立了一张表由这张表来指明逻辑记录和物理记录之间的一一对应关系索引文件在存储器上分为两个区索引区和数据区前者存放索引表后者存放主文件 ●散列文件是利用散列存储方式组织的它类似于散列表即根据文件中关键字的特点设计一个散列函数和处理沖突的方法将记录散列到存储设备上对于散列文件磁盘上的文件记录通常是成组存放的 ●多关键字文件则包含有多个次关键索引的不同于前述几种文件只含有一个主关键字 文件的操作有两种检索和维护 评价一个文件组织的效率是执行文件操作(如查找删除等)所花费的时间和文件组织所需的存储空间 索引文件散列文件和多关键字文件适合存放在磁带上吗?为什么? 答 这几种文件不适合存放在磁带上因为磁带是一种顺序存储器在其上存放的数据只能按顺序存取而索引文件散列文件和多关键字文件等均不能只通过顺序存取就能够完成文件的各种操作因此上述文件适合于存放在磁盘上磁带则适合于存放顺序文件 设有一个职工文件其记录格式为(职工号姓名性别职务年龄工资)其中职工号为关键字并设该文件有如下五个记录 地址 职工号 姓名 性别 职务 年龄 工资 A 张恆珊 男 程序员 B 王莉 女 分析员 C 季迎宾 男 程序员 D 丁达芬 女 操作员 E 赵军 男 分析员 ()若该记录为顺序文件请写出文件的存储结构 ()若该文件为索引顺序文件请写出索引表 ()若该文件为倒排序文件请写出关于性别的倒排表和关于职务的倒排表 答 ()这个结构就是把五个记录依次排列起来形成线性结构 ()索引表如下 职工号(关键字) 地址 C E A B D ()倒排序文件: 关于性别的倒排表如下 次关键字(性别) 地址 男 A C E 女 B D 关于职务的倒排表如下 次关键字(职务) 地址 程序员 A C 分析员 B E 操作员 D 在上题所述的文件中对下列检索写出检索条件的表达式并写出结果记录的职工号 ()男性职工 ()工资超过平均工资的职工 ()职务为程序员和分析员的职工 ()年龄超过岁的男性程序员或分析员 答 () 性别=男 结果记录的职工号为 () 工资>(A>工资+B>工资+C>工资+D>工资+E>工资)/ 结果为 ()(职务=程序员)or(职务==分析员) 结果为 ()(年龄>)and(性别=男)and((职务=程序员)or(职务=分析员)) 结果为 B+树和B树的主要差异是什么? 答 一棵m阶的B+树和m阶的B树的差异是 ①有k个孩子的结点必有k个关键字 ②所有的叶结点包含了全部关键字的信息及指向相应的记录的指针且叶子结点本身依照关键字的大小自小到大顺序链接 ③上面各层结点中的关键字均是下一层相应结点中最大关键字的复写(当然也可采用最小关键字复写的原则)因此所有非叶结点可看作是索引部分 |