- Цели и задачи дисциплины
- Целью данного курса является изучение основных структур данных и алгоритмов, которые могут быть полезны, как для развития алгоритмического мышления, так и для практического применения полученных знаний при разработке программного обеспечения. Основные задачи изучения дисциплины включают: изучение элементов теории структур данных и сложности алгоритмов; изучение методов обработки данных (поиск, сортировка, рекурсия); выбор структуры данных для решения поставленной задачи; построения алгоритмов решения конкретных задач, оценки их сложности, эффективности, трудоемкости.
- Краткое содержание дисциплины
- В рамках данной дисциплины изучаются: абстрактный тип данных (спецификация, представление, реализация); линейные структуры данных (стек, очередь, дек, массив, списки, структуры); нелинейные структуры данных (мультисписки, слоёные списки, деревья, леса, графы); табличные структуры данных; преобразование (нормализация, агрегирование, векторизация) данных; чистка (пропущенных, повторяющихся) данных; анализ сложности и эффективности алгоритмов поиска и сортировки; поиск данных в линейный структурах (линейный, двоичный, интерполяционный) и в текстах (прямой, алгоритм Кнута - Морриса - Пратта, алгоритм поиска строки Бойера - Мура); хеширование; алгоритмы сортировки (методы разработки алгоритмов, параметры оценки эффективности, примеры алгоритмов).
- Компетенции обучающегося, формируемые в результате освоения дисциплины
- Выпускник должен обладать:
- УК-1 Способен осуществлять поиск, критический анализ и синтез информации, применять системный подход для решения поставленных задач
- Образование
- Учебный план 27.03.03, 2024, (4.0), Системный анализ и управление
- Структуры и алгоритмы обработки данных