Algorithms and patterns for searching, hashing, and working with strings.