Let's suppose I have a dynamic list of strings, and I have a substring s. What data structure would be best for determining all possible strings in my list that contain the substring s?
I was thinking of using a suffix tree/array but those don't seem to support fast removal (array doesn't even support fast addition to my knowledge) Is the best I have just KMP?