For a given string S of length n–
-
Optimal algorithm for finding all unique substrings of
Scan’t be less thanO(n^2). So, the best algorithm will give us the complexity ofO(n^2). As per what I have read, this can be implemented by creating suffix tree forS.
The suffix tree for S can be created in O(n) time. Now, my question is-
How can we use the suffix tree for S to get all the unique substrings of S in O(n^2)?
Try to read about suffix arrays: http://en.wikipedia.org/wiki/Suffix_array
This method is faster than suffix tree for getting substrings in string.