Longest Common Subsequence (LCS) Algorithm

From GM-RKB
Jump to navigation Jump to search

A Longest Common Subsequence (LCS) Algorithm is a search algorithm that can be implemented by an LCS system to solve an LCS task.



References

2009

  • (Wikipedia, 2009) ⇒ http://en.wikipedia.org/wiki/Longest_common_subsequence_problem
    • The LCS problem has what is called an "optimal substructure": the problem can be broken down into smaller, simple "subproblems", which can be broken down into yet simpler subproblems, and so on, until, finally, the solution becomes trivial. The LCS problem also has what are called "overlapping subproblems": the solution to a higher subproblem depends on the solutions to several of the lower subproblems. Problems with these two properties — optimal substructure and overlapping substructure — can be approached by a problem-solving technique called dynamic programming, in which the solution is built up starting with the simplest subproblems. The procedure requires what is called "memoization": saving the solutions to one level of subproblem in a table so that the solutions are available to the next level of subproblems. This method is illustrated here.

2009a

2009b

2003

2000

1978

  • David Maier. (1978). “The Complexity of Some Problems on Subsequences and Supersequences.” In: Journal of ACM, 25(2). doi:10.1145/322063.322075.

1975