操作系统之文件管理:2、文件的逻辑结构(有结构文件、无结构文件、顺序文件、索引文件、索引顺序文件)
2、文件的邏輯結構
- 思維導圖
- 邏輯結構VS物理結構
- 文件的邏輯結果分類
- 1、無結構文件
- 2、有結構文件
- 按照記錄的長度來分:
- 按照邏輯結構來分:
- 1、順序文件
- 問題:能否實現隨機存取?
- 2、索引文件
- 3、索引順序文件
- 梳理:
思維導圖
邏輯結構VS物理結構
文件的邏輯結構和物理結構可直接類比于線性表的邏輯結構和物理結構
文件的邏輯結果分類
1、無結構文件
2、有結構文件
按照記錄的長度來分:
按照邏輯結構來分:
1、順序文件
1、順序文件:邏輯上一個接一個排列,可以類比于線性表
2、順序文件可以以順序存儲的方式存儲,類比于順序表;也可以用鏈式存儲的方式存儲,可以類比于鏈表
3、順序文件有兩種結構:串結構和順序結構;主要的區別是關鍵字的順序和記錄的順序是否一致;
4、問題:已經知道了文件的起始地址(也就是第一個記錄存放的位置),能否快速找到第 i 個記錄對應的地址?(即能否實現隨機存取)
問題:能否實現隨機存取?
上圖中給出結果:
1、當記錄變長時,由于每條記錄長度不同,我們就沒法用一種特定的規律來直接計算想要的記錄的地址
2、當記錄定長時,且采用串結構存儲時,無法隨機查找到某個關鍵字的位置,但是可以隨機查找到某個記錄的位置
3、當記錄定長時,且采用順序結構存儲時,可以隨機查找到某個關鍵字的位置,但是可以隨機查找到某個記錄的位置
2、索引文件
建立索引與記錄一一對應關系,又因為索引表是定長的順序文件,所以,在索引表上可以實現隨機存取,因此可以快速找到第 i 個記錄對應的索引項。
3、索引順序文件
順序索引文件區別與索引文件的地方在于:并不是每一個數據項都建立一個索引表項,這樣也可以極大的提高效率。例如:
對于上圖中的問題:當記錄很多很多時查找的效率仍然不高,因此根據索引表的思想,可以繼續建立二級索引表來提高查找效率
梳理:
上述有點結構太亂,梳理一下
隨機查找:是指否可以直接找到某記錄,例如,可以直接用地址找到數組下標為i的值,而不需要從數組開始順序訪問
快速查找:指是否可以用高效的查找算法進行查找,例如冒泡、折半等。
總結
以上是生活随笔為你收集整理的操作系统之文件管理:2、文件的逻辑结构(有结构文件、无结构文件、顺序文件、索引文件、索引顺序文件)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 新闻文字上下滚动代码
- 下一篇: android EditText 控件中