我想在C#中爲一個非常大的項目(+ 700MB)編寫搜索算法,並且由於缺乏經驗,我的代碼運行超過30數小時才結束/發現錯誤。我並不是要求任何人爲我做這件事,而是指向我一種算法,以便我可以學習,學習和實施它。在C#中尋找非常大的項目的文本文件搜索算法
項目:我有很多鍵和值(如負載文件)的文本文件,姑且稱之爲INI文件。我也有許多文件夾中的很多文件的巨大項目。對於每個這些INI密鑰,我必須:
1)搜索整個項目(而不是INI文件)以確保每個密鑰都被加載。每個值將分別載入一個名爲LoadIniValue()的函數。如果某個值沒有在這些函數中調用,我將不得不最終從INI文件中刪除它。
2)在此LoadIniValue()函數中,您還將容器的值存儲在該容器中,作爲參數傳遞。使用該參數作爲新的搜索關鍵字,是否在項目中的任何位置使用(構造函數或析構函數除外)?如果該參數未被使用(評估,讀取等),我將不得不最終從INI文件中刪除它。
這個項目的目標是有一個乾淨的INI文件,沒有未使用的參數。
我真的希望這會被認爲是一個有效的問題,有人可以提供線索。
非常感謝這個社區幫助我學習。你們真的很棒!
我會用數據庫代替;) –
@TimSchmelter:我想到了一個散列表,但由於項目不斷變化,它會需要很多時間嗎? – ElAlarconSoy
你能再解釋一下嗎?如果我理解正確(而且我很可能不會),那麼在這裏發生的是,您打開項目中的每個文件,並查看它是否包含.ini文件中的任何鍵。那麼,無論發現什麼值都不應該從.ini文件中刪除?這就是你的項目的實質嗎?此外,您正在搜索的文件是什麼樣的,您打開的每個單獨的文件有多大?你現在怎麼去搜索它們? –