В пособии рассмотрены наиболее распространенные структуры данных – от обычных массивов до сложных многосвязных динамических структур. Рассмотрена концепция абстрактных типов данных, описаны основные АТД. Описание сопровождается примерами программных реализаций. Кратко изложены методы оценки временной и пространственной сложности алгоритмов. Отдельная глава посвящена сбалансированным деревьям и хеш-таблицам.
В настоящем пособии рассмотрены две группы алгоритмов: алгоритмы сортировки и алгоритмы на строках. Среди алгоритмов сортировки выделены простые обменные методы, имеющие полиномиальную временную сложность, методы с линейно-логарифмической и линейной оценками времени. Представлено описание классических алгоритмов быстрого поиска образца в тексте с использованием вспомогательных структур, приведены алгоритмы их построения. Рассмотрены алгоритмы вычисления редакционного расстояния между строками.