Коректний підбір структур даних є надзвичайно важливим для ефективного функціонування відповідних алгоритмів їх обробки. Фахово побудовані структури даних дозволяють оптимізувати використання машинного часу та пам'яті комп'ютера для виконання найкритичніших операцій.

Відома формула «Програма = Алгоритми + Структури даних» дуже точно виражає необхідність відповідального ставлення до такого підбору. Тому іноді навіть не обраний алгоритм для обробки масиву даних визначає вибір тїєї чи іншої структури даних для їх збереження, а навпаки.

Переважно дані, що обробляються, мають форму чисел, літер, текстів, символів та більш складних структур типу послідовностей, списків і дерев.

Перші алгоритми були розроблені для розв’язування  числових завдань. Сьогодні так само важливі і нечислові алгоритми: вони розроблені для таких завдань, як, наприклад, пошук в тексті заданого слова, планування подій, сортування даних в зазначеному порядку тощо. З цього, однак, зовсім не випливає, що вивчення математичних алгоритмів не актуальне. Навпаки, точні, математичні методи необхідні під час пошуку найкращих розв’язків нечислових завдань для доведення їх коректності.

Навряд чи коли-небудь з'явиться загальна теорія вибору структур даних. Найкраще, що можна зробити, - це розібратися у всіх базових "цеглинах" і в зібраних з них структурах. Здатність докласти ці знання до конструювання великих систем - це перш за все справа інженерної майстерності та практики. 

У даному курсі розглядаються як базові структури даних, так і структури даних, що розробляються користувачем. Для вироблення навичок коректного використання структур даних з метою оптимізації розроблених алгоритмів.