# AnO(ND) difference algorithm and its variations

@article{Myers1986AnONDDA, title={AnO(ND) difference algorithm and its variations}, author={Eugene Wimberly Myers}, journal={Algorithmica}, year={1986}, volume={1}, pages={251-266} }

The problems of finding a longest common subsequence of two sequencesA andB and a shortest edit script for transformingA intoB have long been known to be dual problems. In this paper, they are shown to be equivalent to finding a shortest/longest path in an edit graph. Using this perspective, a simpleO(ND) time and space algorithm is developed whereN is the sum of the lengths ofA andB andD is the size of the minimum edit script forA andB. The algorithm performs well when differences are small…

## 290 Citations

### Efficient merged longest common subsequence algorithms for similar sequences

- Computer ScienceTheor. Comput. Sci.
- 2018

### Utilizing Dynamically Updated Estimates in Solving the Longest Common Subsequence Problem

- Computer ScienceSPIRE
- 2005

A straightforward method for updating dynamically the lower bound value for the lcs is presented and the purpose is to refine the estimate gradually to prune more effectively the search space of the used exact lcs algorithm.

### A sublinear algorithm for approximate keyword searching

- Computer ScienceAlgorithmica
- 2005

An algorithm that given a precomputedindex of the databaseA, finds rare matches in time that issublinear inN, i.e.,Nc for somec<1.0, which gives a 50-to 500-fold improvement over previous algorithms for prolems of interest in molecular biology.

### Practical Algorithms for the Longest Common Extension Problem

- Computer Science, MathematicsSPIRE
- 2009

Two very simple algorithms for the Longest Common Extension problem are given: the first needs only the string and is significantly faster than all previous algorithms on the average, and the second combines the first with a direct RMQ computation on the LongEST Common Prefix array.

### A new algorithm for “the LCS problem” with application in compressing genome resequencing data

- Computer Science2015 IEEE International Conference on Bioinformatics and Biomedicine (BIBM)
- 2015

A new algorithm to address the longest common subsequence problem is presented and a new reference-based compression scheme for genome resequencing data is introduced using the components of the LCS, rather than the LCS itself.

### New efficient algorithms for the LCS and constrained LCS problems

- Computer Science, MathematicsInf. Process. Lett.
- 2008

### Locating Longest Common Subsequences with Limited Penalty

- Computer ScienceDASFAA
- 2017

A basic approach for finding longest common subsequences with limited penalty is proposed, and based on it a filter-refine approach is proposed to reduce number of candidates.

### Performance analysis of some simple heuristics for computing longest common subsequences

- Computer Science, BusinessAlgorithmica
- 2005

It is shown that any heuristic which uses only global information, such as number of symbol occurrences, might return a common subsequence as short as 1/s of the length of the longest.

### Longest common subsequence problem for unoriented and cyclic strings

- Computer Science, MathematicsTheor. Comput. Sci.
- 2007

### Computing longest common extensions in partial words

- Computer Science, MathematicsDiscret. Appl. Math.
- 2018

## References

SHOWING 1-10 OF 26 REFERENCES

### A fast algorithm for computing longest common subsequences

- Computer ScienceCACM
- 1977

An algorithm for finding the longest common subsequence of two sequences of length n which has a running time of O((r + n) log n), where r is the total number of ordered pairs of positions at which the two sequences match.

### An Information-Theoretic Lower Bound for the Longest Common Subsequence Problem

- Computer ScienceInf. Process. Lett.
- 1978

### A longest common subsequence algorithm suitable for similar text strings

- Computer ScienceActa Informatica
- 2004

O(n(m-p) log n) algorithm is presented, and when p is close to m (in other words, two given strings are similar), the algorithm presented here runs much faster than previously known algorithms.

### Bounds on the Complexity of the Longest Common Subsequence Problem

- Computer ScienceJ. ACM
- 1976

It is shown that unless a bound on the total number of distinct symbols is assumed, every solution to the problem can consume an amount of time that is proportional to the product of the lengths of the two strings.

### The string-to-string correction problem with block moves

- Computer ScienceTOCS
- 1984

An algorithm that produces the shortest edit sequence transforming one string into another is presented and is optimal in the sense that it generates a minimal covering set of common substrings of one string with respect to another.

### Fast Algorithms for Finding Nearest Common Ancestors

- Computer Science, MathematicsSIAM J. Comput.
- 1984

An algorithm for a random access machine with uniform cost measure (and a bound of $\Omega (\log n)$ on the number of bits per word) that requires time per query and preprocessing time is presented, assuming that the collection of trees is static.

### Algorithms for the Longest Common Subsequence Problem

- Computer ScienceJACM
- 1977

A lgor i thm is appl icable in the genera l case and requi res O ( p n + n log n) t ime for any input strings o f lengths m and n even though the lower bound on T ime of O ( m n ) need not apply to all inputs.

### A note on two problems in connexion with graphs

- Mathematics, Computer ScienceNumerische Mathematik
- 1959

A tree is a graph with one and only one path between every two nodes, where at least one path exists between any two nodes and the length of each branch is given.

### A Space-Economical Suffix Tree Construction Algorithm

- Computer ScienceJACM
- 1976

A new algorithm is presented for constructing auxiliary digital search trees to aid in exact-match substring searching. This algorithm has the same asymptotic running time bound as previously…