Added a new algorithm for matching non-overlapping substrings.
The new algorithm makes use of suffix arrays and the LCP data structure. The overall algorithm has time complexity O(n log n).
The new algorithm makes use of suffix arrays and the LCP data structure. The overall algorithm has time complexity O(n log n).