Search code examples
algorithmrecursionsubstringbig-otrie

Can you find all substrings of a string in faster than O(N^2) time if your constrained about what sub strings your looking for?


According this answer (Find all possible substring in fastest way). The fastest way to find all possible substrings of a String is O(N^2). However, is this still true if let's say I have a list of words, and I wan't to see if a certain string x has substrings that are in that list of words. For instance, would creating a trie of the list of words, allow me to optimally ignore certain substrings. Thus making the run time better?


Solution

  • Yes, that is what string searching algorithms are for.

    enter image description here