[問題] 多個關鍵字比對

作者: DRLai (蘇打)   2014-10-16 00:03:23
各位板友好
最近需要寫個多重比對的程式
想請教比較有效率的寫法
比對關鍵字 A B C
輸入資料(文字檔)
A:a123 A:a456 B:b111 D:d1234
B:bbb C:ccc
資料共有上千萬筆,關鍵字假設為3個
每行資料長度不見得一樣
希望能得到的資料為冒號後面的值
以上述範例來說
得到的是
a123
a456
b111
bbb
ccc
輸出順序沒關係,只要有取得就好
之前想到的方法是用 foreach 每個關鍵字去掃
但如果關鍵字有10個(m)
資料有一千萬筆(n)
那複雜度就是 m * n = 一億
另一個方法是把資料變成一筆一筆
接著把關鍵字用 join 方式串接
不知道有沒有其他更好的方式呢?
作者: CindyLinz (Cindy Wang)   2014-10-16 00:32:00
這關鍵字都會是一個字元嗎?

Links booklink

Contact Us: admin [ a t ] ucptt.com