数据结构-文件

文件是性质相同的记录的集合。

记录是文件中存取的基本单位,数据项是文件可使用的最小单位。

操作系统研究的文件是一维的无结构连续字符序列,数据库中研究的文件是带有结构的记录集合。

文件在外存上的4种基本组织方式:顺序、索引、散列、链(多关键字)。

磁带和磁盘分别是顺序存取设备和直接存取设备。

<h1>顺序文件</h1>

顺序文件按记录进入文件的顺序存储。

顺序有序文件和顺序无序文件。

顺序文件多用在磁带上。

<h1>索引文件</h1>

索引表指明逻辑记录和物理记录的对应关系,索引表和主文件一起构成索引文件,在存储器上分为索引区和数据区。

主文件分为索引顺序文件和索引非顺序文件,索引非顺序文件适合随机存取,索引顺序文件适合于顺序存取。

索引表分为稠密索引和稀疏索引。

还可以对索引表建立索引,称为查找表。查找表可以有多级。

这种多级顺序表索引是一种静态索引。而动态索引采用二叉排序树、AVL树、B-树等树表结构,插入和删除方便。

<h1>索引顺序文件</h1>

两种常用的索引顺序文件:ISAM文件和VASM文件。

ISAM:索引顺序存取方法,为磁盘存取设计,采用静态索引结构。ISAM文件由多级主索引、柱面索引、磁道索引、主文件组成。

VSAM:虚拟存储存取方法,采用B+树作为动态索引结构。VSAM文件由索引集、顺序集、数据集组成。

<h1>散列文件</h1>

也称为直接存取文件,散列文件主要采用拉链法处理冲突。

散列文件只能按关键字随机存取,不能顺序存取。

<h1>多关键字文件</h1>

多重表文件,对每个次关键字也建立一个索引,并且将具有相同次关键字的记录的物理地址链接起来,次关键字索引表的一条记录包括次关键字、链表的头指针、链表长度。

倒排文件,与多重表文件相比,倒排文件把链表的物理地址放在了次关键字索引表中了。

与单关键字索引文件相比,倒排文件是按给定次关键字查找记录,而不是在已查找记录中找次关键字。

相关推荐
星火开发设计1 小时前
C++ stack 全面解析与实战指南
java·数据结构·c++·学习·rpc··知识
C雨后彩虹1 小时前
书籍叠放问题
java·数据结构·算法·华为·面试
Jasmine_llq2 小时前
《UVA11181 条件概率 Probability|Given》
数据结构·算法·深度优先搜索(dfs)·剪枝(可行性剪枝)·组合枚举(递归暴力枚举)·条件概率统计与归一化
CCPC不拿奖不改名3 小时前
数据处理与分析:pandas基础+面试习题
开发语言·数据结构·python·面试·职场和发展·pandas
宵时待雨3 小时前
数据结构(初阶)笔记归纳2:顺序表的实现
c语言·数据结构·笔记·算法
漫随流水4 小时前
leetcode算法(101.对称二叉树)
数据结构·算法·leetcode·二叉树
2301_764441335 小时前
python实现罗斯勒吸引子(Rössler Attractor)
开发语言·数据结构·python·算法·信息可视化
漫随流水5 小时前
leetcode算法(559.N叉树的最大深度)
数据结构·算法·leetcode·二叉树
ホロHoro6 小时前
数据结构非线性部分(二)review
linux·服务器·数据结构
菜鸟233号6 小时前
力扣474 一和零 java实现
java·数据结构·算法·leetcode·动态规划