网站推广策略含义,百度快速提交入口,林云seo博客,网站名称是什么意思所谓的“逻辑结构”#xff0c;就是指在用户看来#xff0c;文件内部的数据应该是如何组织起来的。 而“物理结构”指的是在操作系统看来#xff0c;文件的数据是如何存放在外存中的。
1.无结构文件
无结构文件:文件内部的数据就是一系列二进制流或字符流组成。无明显的逻…所谓的“逻辑结构”就是指在用户看来文件内部的数据应该是如何组织起来的。 而“物理结构”指的是在操作系统看来文件的数据是如何存放在外存中的。
1.无结构文件
无结构文件:文件内部的数据就是一系列二进制流或字符流组成。无明显的逻辑结构。 又称“流式文件”。如:Windows操作系统中的.txt文件。
2.有结构文件
有结构文件:由一组相似的记录组成又称“记录式文件”。 每条记录又若干个数据项组成。如:数据库表文件。 一般来说每条记录有一个数据项可作为关键字。 根据各条记录的长度占用的存储空间是否相等又可分为定长记录和可变长记录两种。
1.顺序文件
顺序文件:文件中的记录一个接一个地顺序排列逻辑上记录可以是定长的或可变长的。 各个记录在物理上可以顺序存储或链式存储。
顺序存储逻辑上相邻的记录物理上也相邻类似于顺序表)链式存储逻辑上相邻的记录物理上不一定相邻(类似于链表串结构记录之间的顺序与关键字无关。顺序结构记录之间的顺序按关键字顺序排列。
1.链式存储
无论是定长/可变长记录都无法实现随机存取每次只能从第一个记录开始依次往后查找
2.顺序存储
可变长记录
无法实现随机存取。每次只能从第一个记录开始依次往后查找
定长记录
可实现随机存取。记录长度为L则第i个记录存放的相对位置是i*L。 若采用串结构无法快速找到某关键字对应的记录。 若采用顺序结构可以快速找到某关键字对应的记录如折半查找)。
结论: 定长记录的顺序文件若物理上采用顺序存储则可实现随机存取; 若能再保证记录的顺序结构则可实现快速检索(即根据关键字快速找到对应记录).
顺序文件的缺点是增加/删除一个记录比较困难如果是串结构则相对简单).
2.索引文件 建立一张索引表以加快文件检索速度。每条记录对应一个索引项。 索引表本身是定长记录的顺序文件。因此可以快速找到第i个记录对应的索引项。
可将关键字作为索引号内容若按关键字顺序排列则还可以支持按照关键字折半查找。
每当要增加/删除一个记录时需要对索引表进行修改。 由于索引文件有很快的检索速度因此主要用于对信息处理的及时性要求比较高的场合。
3.索引顺序文件
索引顺序文件是索引文件和顺序文件思想的结合。 索引顺序文件中同样会为文件建立一张索引表但不同的是:并不是每个记录对应一个索引表项而是一组记录对应一个索引表项。
索引顺序文件的索引项也不需要按关键字顺序排列这样可以极大地方便新表项的插入。
1.检索效率分析
若一个顺序文件有10000个记录则根据关键字检索文件只能从头开始顺序查找这里指的并不是定长记录、顺序结构的顺序文件)平均须查找5000个记录。若采用索引顺序文件结构可把10000个记录分为100组每组100个记录。 则需要先顺序查找索引表找到分组(共100个分组因此索引表长度为100平均需要查50次 找到分组后再在分组中顺序查找记录每个分组100个记录因此平均需要查50次。 可见采用索引顺序文件结构后平均查找次数减少为5050 100次。
4.多级索引顺序文件
为了进一步提高检索效率可以为顺序文件建立多级索引表。 例如对于一个含 1 0 6 10^6 106个记录的文件可先为该文件建立一张低级索引表 每100个记录为一组故低级索引表中共有10000个表项即10000个定长记录 再把这10000个定长记录分组每组100个为其建立顶级索引表故顶级索引表中共有100个表项。