這篇文章的內容是php檔案操作-將其他檔案的資料加入本檔案中,現在分享給大家,有需要的朋友可以參考一下
GitHub原始碼
其實我們的程式基於下面的問題寫的答案:
有兩個文字檔案A.txt B.txt
A.txt 3000萬行,userid唯一,userid和username以空格分隔,如下所示:
userid username
1 yi
2 er
3 san
#… …
B.txt 3000萬行,userid,useridrealsname #txtid ##userid realname
1 一
2 二
3 三
… …
txt 找出一段程式碼,找出B.usernameuserid對應的#… …
txt到B.txt的第三列,並給出時間複雜度。
在我們的程式中,是預設兩個檔案的行數據是一一對應的,即A的第n行數據對應B的第n行數據,這樣我們的程式的時間複雜度是O(n)。
但是在實際操作中,肯定會遇到兩個檔案的資料行不是一一對應的情況,這樣的話我只想到了最簡單的時間複雜度為O(n^2)的操作,不知道有沒有更好的演算法解決這個問題。
如果把檔案讀出,建構成一個查詢為O(1)或O(logn)的資料結構,這樣應該複雜度會變成O(n)或O(nlogn),不過遇到文件過大,建構的資料結構太大的情況該如何應對,借鏡資料庫b-tree索引的做法?
登入後複製
GitHub原始碼
其實我們的程式基於下面的問題寫的答案:
有兩個文字檔A.txt B.txt
A.txt 3000萬行,userid唯一,userid和username以空格分隔,如下圖:
userid username
1 yi
2 er
3 san
… …
B.txt 3000萬行,userid ##1 一
2 二
3 三
… …
請寫一段程式碼,將B.txt中userid對應的username在A.txt裡找出來,
請寫一段程式碼,將B.txt中的對應的username在A.txt裡找出來,找第三列,並給出時間複雜度。
登入後複製
以上是php檔案操作-將其他文件的資料加入本文件中的詳細內容。更多資訊請關注PHP中文網其他相關文章!