String-to-string correction problem

Uses your system voice; voice and rate in settings.

Snapshot

≈ 4 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

In computer science, the string-to-string correction problem refers to determining the minimum cost sequence of edit operations necessary to change one string into another (i.e., computing the shortest edit distance). Each type of edit operation has its own cost value. A single edit operation may be changing a single symbol of the string into another (cost W C ), deleting a symbol (cost W D ), or inserting a new symbol (cost W I ). If all edit operations have the same unit costs (W C = W D = W I = 1) the problem is the same as computing the Levenshtein distance of two strings. Several algorithms exist to provide an efficient way to determine string distance and specify the minimum number of transformation operations required. Such algorithms are particularly useful for delta creation operations where something is stored as a set of differences relative to a base version. This allows several versions of a single object to be stored much more efficiently than storing them separately. This holds true even for single versions of several objects if they do not differ greatly, or anything in between. Notably, such difference algorithms are used in molecular biology to provide some measure of kinship between different kinds of organisms based on the similarities of their macromolecules (such as proteins or DNA).

In computer science, the string-to-string correction problem refers to determining the minimum cost sequence of edit operations necessary to change one string into another (i.e., computing the shortest edit distance). Each type of edit operation has its own cost value. A single edit operation may be changing a single symbol of the string into another (cost W C ), deleting a symbol (cost W D ), or inserting a new symbol (cost W I ). If all edit operations have the same unit costs (W C = W D = W I = 1) the problem is the same as computing the Levenshtein distance of two strings. Several algorithms exist to provide an efficient way to determine string distance and specify the minimum number of transformation operations required. Such algorithms are particularly useful for delta creation operations where something is stored as a set of differences relative to a base version. This allows several versions of a single object to be stored much more efficiently than storing them separately. This holds true even for single versions of several objects if they do not differ greatly, or anything in between. Notably, such difference algorithms are used in molecular biology to provide some measure of kinship between different kinds of organisms based on the similarities of their macromolecules (such as proteins or DNA). Robert A. Wagner (1975) showed that the general problem is NP-complete. In particular, he proved that when W I C = W D = ∞ and 0 S < ∞ (or equivalently, changing and deletion are not permitted), the problem is NP-complete.

Text derived from https://en.wikipedia.org/w/index.php?oldid=1234816792 under CC BY-SA 4.0; modifications have been made.

Provenance

snapshot enwiki-001234816792 · captured 1721112162.0 · version history

Cite this page as: encyclopegia.org, “String-to-string correction problem”, snapshot enwiki-001234816792. https://encyclopegia.org/a/string-to-string-correction-problem