我開始研究一個新的家庭項目,我需要索引具有文件名的路徑。 該程序將索引我的本地硬盤上的文件,不需要處理文件的內容(所以我假設/希望這將是簡單的實現)。 首先,用戶將插入文件擴展名列表以獲取索引(在安裝期間)。 然後程序將運行並創建保存用戶輸入的特定文件路徑的數據結構。尋找有效的方法來索引文件
從數據結構中檢索數據是這樣的:文件的
路徑上我的硬盤=
我思考了很長一段時間,並寫了一個設計功能(由用戶輸入文件名)對於數據結構這是我的建議 (Design Illustration):
我會用與映射擴展的哈希函數數組小區(每個小區呈現
擴展文件的第一個字母)。每個單元格內都會有一個以相同字母開頭的擴展名列表。
列表中的每個節點都將有用於搜索文件名的紅黑樹,然後 後,我們發現文件名的程序將檢索存儲在樹
節點的文件的路徑。
哦,順便說一句,我通常在c(低級別)或C++中編程。
你是對的,但我來自低級別的方法使用c.in c + + STL沒有包含SortedDictionary,所以在這種情況下,我應該使用地圖數據結構和樹。出於效率的原因,樹應該是平衡的,有什麼建議?謝謝!!! – JammingThebBits 2011-02-10 13:08:42