longest common substring

(classic problem)

Definition: Find the longest substring of two or more strings.

See also longest common subsequence, shortest common superstring.

Note: The longest common substring is contiguous, while the longest common subsequence need not be.

Author: PEB


(C and Mathematica)

More information

Dan Hirschberg's pseudocode as an example of dynamic programming

Go to the Dictionary of Algorithms and Data Structures home page.

If you have suggestions, corrections, or comments, please get in touch with Paul Black.

Entry modified 2 September 2014.
HTML page formatted Fri Feb 23 10:06:08 2018.

Cite this as:
Paul E. Black, "longest common substring", in Dictionary of Algorithms and Data Structures [online], Vreda Pieterse and Paul E. Black, eds. 2 September 2014. (accessed TODAY) Available from: