We are working to restore the Unionpedia app on the Google Play Store
OutgoingIncoming
🌟We've simplified our design for better navigation!
Instagram Facebook X LinkedIn
Your own Unionpedia with your logo and domain, from 9.99 USD/month
Create my Unionpedia

String-searching algorithm

Index String-searching algorithm

In computer science, string-searching algorithms, sometimes called string-matching algorithms, are an important class of string algorithms that try to find a place where one or several strings (also called patterns) are found within a larger string or text. [1]

Table of Contents

  1. 49 relations: Aho–Corasick algorithm, Algorithm, Alphabet (formal languages), Approximate string matching, Array (data structure), Big O notation, Bioinformatics, Bitap algorithm, Boyer–Moore string-search algorithm, C standard library, Charles E. Leiserson, Clifford Stein, Commentz-Walter algorithm, Compressed pattern matching, Computer science, Depth-first search, Deterministic finite automaton, Diacritic, Finite set, Full-text search, Glibc, Graph matching, International Colloquium on Automata, Languages and Programming, Introduction to Algorithms, Knuth–Morris–Pratt algorithm, Lecture Notes in Computer Science, Ligature (writing), Markup language, Matching wildcards, Musl, Non-coding DNA, Pattern matching, Powerset construction, Rabin–Karp algorithm, Regular expression, Regular grammar, Regular language, Ron Rivest, Sequence alignment, String (computer science), Substring index, Suffix array, Suffix automaton, Suffix tree, Thomas H. Cormen, Trigram search, Two-way string-matching algorithm, Variable-width encoding, Vowel pointing.

  2. String matching algorithms

Aho–Corasick algorithm

In computer science, the Aho–Corasick algorithm is a string-searching algorithm invented by Alfred V. Aho and Margaret J. Corasick in 1975. String-searching algorithm and Aho–Corasick algorithm are string matching algorithms.

See String-searching algorithm and Aho–Corasick algorithm

Algorithm

In mathematics and computer science, an algorithm is a finite sequence of mathematically rigorous instructions, typically used to solve a class of specific problems or to perform a computation.

See String-searching algorithm and Algorithm

Alphabet (formal languages)

In formal language theory, an alphabet, sometimes called a vocabulary, is a non-empty set of indivisible symbols/characters/glyphs, typically thought of as representing letters, characters, digits, phonemes, or even words.

See String-searching algorithm and Alphabet (formal languages)

Approximate string matching

In computer science, approximate string matching (often colloquially referred to as fuzzy string searching) is the technique of finding strings that match a pattern approximately (rather than exactly). String-searching algorithm and approximate string matching are string matching algorithms.

See String-searching algorithm and Approximate string matching

Array (data structure)

In computer science, an array is a data structure consisting of a collection of elements (values or variables), of same memory size, each identified by at least one array index or key.

See String-searching algorithm and Array (data structure)

Big O notation

Big O notation is a mathematical notation that describes the limiting behavior of a function when the argument tends towards a particular value or infinity.

See String-searching algorithm and Big O notation

Bioinformatics

Bioinformatics is an interdisciplinary field of science that develops methods and software tools for understanding biological data, especially when the data sets are large and complex.

See String-searching algorithm and Bioinformatics

Bitap algorithm

The bitap algorithm (also known as the shift-or, shift-and or Baeza-Yates-Gonnet algorithm) is an approximate string matching algorithm. String-searching algorithm and bitap algorithm are string matching algorithms.

See String-searching algorithm and Bitap algorithm

Boyer–Moore string-search algorithm

In computer science, the Boyer–Moore string-search algorithm is an efficient string-searching algorithm that is the standard benchmark for practical string-search literature. String-searching algorithm and Boyer–Moore string-search algorithm are string matching algorithms.

See String-searching algorithm and Boyer–Moore string-search algorithm

C standard library

The C standard library or libc is the standard library for the C programming language, as specified in the ISO C standard.

See String-searching algorithm and C standard library

Charles E. Leiserson

Charles Eric Leiserson (born 1953) is a computer scientist and professor at Massachusetts Institute of Technology (M.I.T.). He specializes in the theory of parallel computing and distributed computing.

See String-searching algorithm and Charles E. Leiserson

Clifford Stein

Clifford Seth Stein (born December 14, 1965), a computer scientist, is a professor of industrial engineering and operations research at Columbia University in New York, NY, where he also holds an appointment in the Department of Computer Science.

See String-searching algorithm and Clifford Stein

Commentz-Walter algorithm

In computer science, the Commentz-Walter algorithm is a string searching algorithm invented by Beate Commentz-Walter. String-searching algorithm and Commentz-Walter algorithm are string matching algorithms.

See String-searching algorithm and Commentz-Walter algorithm

Compressed pattern matching

In computer science, compressed pattern matching (abbreviated as CPM) is the process of searching for patterns in compressed data with little or no decompression.

See String-searching algorithm and Compressed pattern matching

Computer science

Computer science is the study of computation, information, and automation.

See String-searching algorithm and Computer science

Depth-first search (DFS) is an algorithm for traversing or searching tree or graph data structures.

See String-searching algorithm and Depth-first search

Deterministic finite automaton

In the theory of computation, a branch of theoretical computer science, a deterministic finite automaton (DFA)—also known as deterministic finite acceptor (DFA), deterministic finite-state machine (DFSM), or deterministic finite-state automaton (DFSA)—is a finite-state machine that accepts or rejects a given string of symbols, by running through a state sequence uniquely determined by the string.

See String-searching algorithm and Deterministic finite automaton

Diacritic

A diacritic (also diacritical mark, diacritical point, diacritical sign, or accent) is a glyph added to a letter or to a basic glyph.

See String-searching algorithm and Diacritic

Finite set

In mathematics, particularly set theory, a finite set is a set that has a finite number of elements.

See String-searching algorithm and Finite set

In text retrieval, full-text search refers to techniques for searching a single computer-stored document or a collection in a full-text database.

See String-searching algorithm and Full-text search

Glibc

The GNU C Library, commonly known as glibc, is the GNU Project implementation of the C standard library.

See String-searching algorithm and Glibc

Graph matching

Graph matching is the problem of finding a similarity between graphs.

See String-searching algorithm and Graph matching

International Colloquium on Automata, Languages and Programming

ICALP, the International Colloquium on Automata, Languages, and Programming is an academic conference organized annually by the European Association for Theoretical Computer Science and held in different locations around Europe.

See String-searching algorithm and International Colloquium on Automata, Languages and Programming

Introduction to Algorithms

Introduction to Algorithms is a book on computer programming by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein.

See String-searching algorithm and Introduction to Algorithms

Knuth–Morris–Pratt algorithm

In computer science, the Knuth–Morris–Pratt algorithm (or KMP algorithm) is a string-searching algorithm that searches for occurrences of a "word" W within a main "text string" S by employing the observation that when a mismatch occurs, the word itself embodies sufficient information to determine where the next match could begin, thus bypassing re-examination of previously matched characters. String-searching algorithm and Knuth–Morris–Pratt algorithm are string matching algorithms.

See String-searching algorithm and Knuth–Morris–Pratt algorithm

Lecture Notes in Computer Science

Lecture Notes in Computer Science is a series of computer science books published by Springer Science+Business Media since 1973.

See String-searching algorithm and Lecture Notes in Computer Science

Ligature (writing)

In writing and typography, a ligature occurs where two or more graphemes or letters are joined to form a single glyph.

See String-searching algorithm and Ligature (writing)

Markup language

A markup language is a text-encoding system which specifies the structure and formatting of a document and potentially the relationship between its parts.

See String-searching algorithm and Markup language

Matching wildcards

In computer science, an algorithm for matching wildcards (also known as globbing) is useful in comparing text strings that may contain wildcard syntax.

See String-searching algorithm and Matching wildcards

Musl

musl is a C standard library intended for operating systems based on the Linux kernel, released under the MIT License.

See String-searching algorithm and Musl

Non-coding DNA

Non-coding DNA (ncDNA) sequences are components of an organism's DNA that do not encode protein sequences.

See String-searching algorithm and Non-coding DNA

Pattern matching

In computer science, pattern matching is the act of checking a given sequence of tokens for the presence of the constituents of some pattern.

See String-searching algorithm and Pattern matching

Powerset construction

In the theory of computation and automata theory, the powerset construction or subset construction is a standard method for converting a nondeterministic finite automaton (NFA) into a deterministic finite automaton (DFA) which recognizes the same formal language.

See String-searching algorithm and Powerset construction

Rabin–Karp algorithm

In computer science, the Rabin–Karp algorithm or Karp–Rabin algorithm is a string-searching algorithm created by that uses hashing to find an exact match of a pattern string in a text. String-searching algorithm and Rabin–Karp algorithm are string matching algorithms.

See String-searching algorithm and Rabin–Karp algorithm

Regular expression

A regular expression (shortened as regex or regexp), sometimes referred to as rational expression, is a sequence of characters that specifies a match pattern in text.

See String-searching algorithm and Regular expression

Regular grammar

In theoretical computer science and formal language theory, a regular grammar is a grammar that is right-regular or left-regular.

See String-searching algorithm and Regular grammar

Regular language

In theoretical computer science and formal language theory, a regular language (also called a rational language) is a formal language that can be defined by a regular expression, in the strict sense in theoretical computer science (as opposed to many modern regular expression engines, which are augmented with features that allow the recognition of non-regular languages).

See String-searching algorithm and Regular language

Ron Rivest

Ronald Linn Rivest (born May 6, 1947) is a cryptographer and computer scientist whose work has spanned the fields of algorithms and combinatorics, cryptography, machine learning, and election integrity.

See String-searching algorithm and Ron Rivest

Sequence alignment

In bioinformatics, a sequence alignment is a way of arranging the sequences of DNA, RNA, or protein to identify regions of similarity that may be a consequence of functional, structural, or evolutionary relationships between the sequences.

See String-searching algorithm and Sequence alignment

String (computer science)

In computer programming, a string is traditionally a sequence of characters, either as a literal constant or as some kind of variable.

See String-searching algorithm and String (computer science)

Substring index

In computer science, a substring index is a data structure which gives substring search in a text or text collection in sublinear time.

See String-searching algorithm and Substring index

Suffix array

In computer science, a suffix array is a sorted array of all suffixes of a string.

See String-searching algorithm and Suffix array

Suffix automaton

In computer science, a suffix automaton is an efficient data structure for representing the substring index of a given string which allows the storage, processing, and retrieval of compressed information about all its substrings.

See String-searching algorithm and Suffix automaton

Suffix tree

In computer science, a suffix tree (also called PAT tree or, in an earlier form, position tree) is a compressed trie containing all the suffixes of the given text as their keys and positions in the text as their values.

See String-searching algorithm and Suffix tree

Thomas H. Cormen

Thomas H. Cormen is an American politician and retired academic.

See String-searching algorithm and Thomas H. Cormen

Trigram search is a method of searching for text when the exact syntax or spelling of the target object is not precisely known or when queries may be regular expressions. String-searching algorithm and Trigram search are string matching algorithms.

See String-searching algorithm and Trigram search

Two-way string-matching algorithm

In computer science, the two-way string-matching algorithm is a string-searching algorithm, discovered by Maxime Crochemore and Dominique Perrin in 1991. String-searching algorithm and two-way string-matching algorithm are string matching algorithms.

See String-searching algorithm and Two-way string-matching algorithm

Variable-width encoding

A variable-width encoding is a type of character encoding scheme in which codes of differing lengths are used to encode a character set (a repertoire of symbols) for representation, usually in a computer.

See String-searching algorithm and Variable-width encoding

Vowel pointing

Vowel pointing is the inserting of signs used to indicate vowels in certain alphabets.

See String-searching algorithm and Vowel pointing

See also

String matching algorithms

References

[1] https://en.wikipedia.org/wiki/String-searching_algorithm

Also known as Deterministic finite automata string search, Exact string matching, Naive string search, Pattern matching in strings, Search string, String matching, String matching algorithm, String matching algorithms, String search, String search algorithm, String search algorithms, String searching, String searching algorithm, String searching algorithms, Substring search, Text match, Text search, Text searching.