我有一些字符串,其中每個字符串都是一個或多個字符串的副本。例如:如何將字符串拆分爲重複的子字符串
L = "hellohellohello"
M = "good"
N = "wherewhere"
O = "antant"
我想這樣的字符串分割成一個列表,以便每個元素只是有重複的部分。例如:
splitstring(L) ---> ["hello", "hello", "hello"]
splitstring(M) ---> ["good"]
splitstring(N) ---> ["where", "where"]
splitstring(O) ---> ["ant", "ant"]
由於字符串每個字符長度大約爲1000個字符,所以如果這個字符相當快,那也是很好的。
請注意,在我的情況下,重複都從字符串的開始處開始,並且它們之間沒有間隔,所以它比在字符串中查找最大重複的一般問題要簡單得多。
如何做到這一點?
看看這個[問題](http://stackoverflow.com/questions/11090289/find-longest-repetitive-sequence-i n-a-string)我認爲你正在尋找類似的東西?此外,這種方法給出的複雜度是O(n),所以它應該是非常快的按照您的要求。 –
@MridulKashyap我的問題非常簡單,因爲我的重複從字符串的開頭開始,並且在它們之間沒有任何間隔。 – eleanora