目錄實現


有很多演算法可以使用這些目錄來實現。 但是,選擇合適的目錄實現演算法可能會顯著影響系統的效能。

目錄實現演算法根據它們正在使用的資料結構進行分類。 目前主要使用兩種演算法。

1. 線性列表
在這個演算法中,目錄中的所有檔案都保持為單行列表。 每個檔案都包含指向分配給它的資料塊的指標和目錄中的下一個檔案。

特點

  1. 在建立新檔案時,檢查整個列表是否新檔案名與現有檔案名匹配。 如果它不存在,則可以在開始或結束時建立該檔案。 因此,尋找一個唯一的名字是一個大問題,因為遍歷整個列表需要時間。

  2. 該列表需要在檔案的每個操作(建立,刪除,更新等)的情況下遍歷,因此系統變得低效。

2. 雜湊表

要克服目錄單連結串列實現的缺點,有一種替代方法就是雜湊表。 這種方法建議使用雜湊表和連結串列。

目錄中每個檔案的鍵值對都會生成並儲存在雜湊表中。鍵可以通過在檔案名上應用雜湊函式來確定,而鍵指向儲存在目錄中的相應檔案。

現在,搜尋變得高效,因為整個列表在每次操作時都不會被搜尋到。 只有雜湊表項被使用該鍵檢查,並且如果找到的條目然後將使用該值來獲取相應的檔案。