Курс за второй семестр. Абстрактные типы данных



СодержаниеЗадача раскраски.
Делаем первые выводы относительно определения типа данных.
Перечисление последовательностей фиксированной длины.
Два взгляда на диаграммы – графы и автоматы.
Х – выделенная переменная, произвольный массив. Остальные переменные не определены. Выход: любое состояние, в котором Х
Как сократить перебор с возвратом. Перечисление последовательностей переменной длины
Словарный порядок на последовательностях произвольной длины
Переход к следующей раскраске при новом определении словарного порядка
Статическая реализация стеков.
Очереди. Статическая реализация.
Get(q:tQueue;var x:T)
Статическая реализация деревьев.
Автоматы как структуры данных
Статическая реализация графов. Проблема фрагментации памяти.
Общая схема реализации автомата как списка.
Обработка кучи.
Динамическая реализация абстрактных типов ссылками.
Синтаксис типов.
Реализация очередей.
Обработка деревьев. Деревья выражений.
Задача по вычислению
Записи типов с вариантами.
Создание дерева. Перевод из префиксной записи.
Анализ алгоритма вычисления.
Задача синтаксического анализа.
Шаблоном атома
Формальным вычислением
Раздельное описание абстрактных типов.
Проблема с кратным использованием модулей.
Деревья как структуры данных.
Деревья поиска.
Другие обходы дерева. Обход в ширину.
Рекурсивные процедуры и функции.
Граф называется деревом
Рекурсивная версия задачи о вычислении
Поиск в дереве.
Поиск в дереве поиска
Пример с факториалом
Проблемы с семантикой рекурсии.
Функциональным программированием
Введение в машинно-ориентированное (ссылочное) программирование.
Создание новых структурных операторов.
Формальная семантика
Представление сложных типов.
Проблемы реализации ввода-вывода.
Реализация процедур
Реализация структур управления.
Путь наверх.
Передача параметров.
Сохранение и восстановление значений.
Границы программирования. Принципиальная и практическая неразрешимость.
О формальной спецификации.
Процедуры как функции на множестве состояний.
Задача поиска
Универсальные методы решения задач.