The Rabin–Karp algorithm seeks to speed up the testing of equality of the pattern to the substrings in the text by using a hash function

Topological ordering of a directed graph is a linear ordering of its vertices

An algorithm for finding shortest paths in a weighted graph with positive or negative edge weights but with no negative cycles

A bloom filter is a space-efficient probabilistic data structure designed to test whether an element is present in a set.

A hash function used in Rabin–Karp's string search algorithm