Модуль 1. Способы организации данных. Анализ графов: построение оптимального пути между вершинами ориентированного ациклического графа, определение количества различных путей между вершинами. Обход узлов дерева в глубину. Деревья: анализ работы рекурсивных алгоритмов, разбор арифметических и логических выражений. Бинарное дерево. Использование графов, деревьев, списков при описании объектов и процессов окружающего мира. Дискретные игры двух игроков с полной
информацией. Выигрышные стратегии
Модуль 2. Сортировка. Сортировка одномерных массивов. Квадратичные алгоритмы сортировки сортировка пузырьком. Слияние двух отсортированных массивов в один без использования сортировки. Алгоритмы анализа отсортированных массивов. Рекурсивная реализация сортировки массива на основе слияния двух его отсортированных фрагментов. Сложность алгоритма сортировки слиянием
Модуль 3. Построение алгоритмов. Алгоритмы: исследования элементарных функций, анализа и преобразования записей чисел в позиционной системе счисления, делимости чисел, Евклида, линейной обработки последовательности чисел без использования дополнительной памяти, обработки массивов, рекурсивные, анализа символьных строк, приближенного решения уравнений, приближенного вычисления длин и площадей. Метод динамического программирования. Анализ алгоритмов: определение входных данных, при которых алгоритм даёт указанный результат, определение результата алгоритма без его полного пошагового выполнения