数据结构之文件2

顺序文件概念

1.顺序文件
     顺序文件是指按记录进入文件的先后顺序存放、其逻辑顺序和物理顺序一致的文件。
  注意:
     一切存储在顺序存取存储器(如磁带)上的文件,都只能是顺序文件。

2. 顺序文件分类
(1) 顺序有序文件
     记录按其主关键字有序的顺序文件为顺序有序文件。

(2) 顺序无序文件
     记录未按其主关键字有序排列的顺序文件为顺序有序文件。
  注意:
     为提高检索效率,常将顺序文件组织成有序文件。

顺序有序文件存取的查找方法

1.顺序存取存储器(磁带)上文件存取的查找方法
     顺序查找法即顺序扫描文件,按记录的主关键字逐个查找。要检索第i个记录,必须检索前i-1个记录。
   注意:
    ① 这种查找法对于少量的检索是不经济的,但适合于批量检索。
    ② 顺序存取存储器上的文件只能用顺序查找法存取

2.直接存取存储(磁盘)上文件存取的查找方法
(1) 顺序查找法

(2) 分块查找法
  具体方法:
     设文件按主关键字的递增序,每100个记录为一块,各块的最后一个记录的主关键字为Kl00 ,K200 ,…,K100i ,…:
     查找时,将所要查找的记录的主关键字K,依次和各块的最后一个记录的主关键字比较,当K大于K100(i-1) 且小于或等于K100i 时,则在第i块内进行扫描。
  注意:
     分块查找法在查找时不必扫描整个文件中的记录。

(3) 二分查找法
     ① 二分查找法只适合对较小的文件或一个文件的索引进行查找。
     ② 当文件很大,在磁盘上占有多个柱面时,二分查找将引起磁头来回移动,增加寻查时间。
     ③ 对磁盘等直接存取设备,还可以对顺序文件进行插值查找和跳步查找。

顺序文件的修改

1.顺序文件的修改操作
     由于文件中的记录不能像向量空间的数据那样"移动",故只能通过复制整个文件的方法实现插人、删除和修改等更新操作。

2.批量处理方式实现顺序文件的更新
(1)批量处理方式工作原理:
  ① 把所有对顺序文件(以下称主文件)的更新请求,都放入一个较小的事务文件中。
  ② 当事务文件变得足够大时,将事务文件按主关键字排序,
  ③ 再按事务文件对主文件进行一次全面的更新,产生一个新的主文件。
  ④ 最后,清空事务文件,以便积累此后的更新内容。

(2)工作原理如下图所示。
     
  注意:
     批量处理方式可减少更新操作的代价

顺序文件主要优点是连续存取的速度较快

     顺序文件具有连续存取特点。当文件中第i个记录刚被存取过,而下一个要存取的是第i+1个记录,则这种存取将会很快完成。
  注意:
     ① 对存放在单一存储设备(如磁带)上的顺序文件连续存取速度快
     ② 顺序文件存放在多路存储设备(如磁盘)上时,在多道程序的情况下,由于别的用户可能驱使磁头移向其它柱面,会降低连续存取的速度。顺序文件多用于磁带。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值