作者angleevil (human)
看板C_and_CPP
標題Re: [問題] 一個演算法相關的問題
時間Thu Jun 9 12:44:33 2011
先跟原po致歉,之前沒搞懂你的問題,回了很多不相關的答案
我認為要達到O(n + m),要滿足一個特殊狀況,
那就是只考慮對應pattern的頭尾字元,範例如下,
不然的話只能nlogm吧(那篇投影片看到overlap-match algorithm就頭昏).
ex:
text內容
A123B4BA56AB789
pattern內容
AabB
要match的字元是A或B(pattern的頭尾字元)
程式碼如下(編譯器是gcc 4.3.0):
http://pastie.org/2041008
ps:
進階Programmer之路真難走
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.204.217
→ walker2009:angle大一直改人家題目 (淚奔~ 06/09 13:16
→ angleevil:不是拉,只是覺得要達成O(n+m),可能要在特殊狀況下才能達 06/09 13:26
→ angleevil:成,不要生氣嘛>//< 06/09 13:27
※ 編輯: angleevil 來自: 61.220.204.217 (06/09 13:33)
→ ledia:怎麼好像是解完全不同的問題 XD 06/09 15:10
→ angleevil:= =恩阿,我都快想叫版主刪除這篇,這問題真的對我來說 06/09 15:22
→ angleevil:太難 06/09 15:23