АиСД осень 2012 лекция 7
-
Upload
technopark -
Category
Documents
-
view
67 -
download
4
Transcript of АиСД осень 2012 лекция 7
АиСД: фундаментальное алгоритмическое введение 71
Тип вектор.
Примеры математических задач, требующих генерации линейных систем заранее неизвестного размера.
Критика статических прямоугольных массивов с фиксированными границами.
Виртуальная память: решение проблемы?
Динамические массивы. Неэффективность полной динамики.
Разреженные матрицы.
Вектор -- эффективная идея реализации динамического массива.
Поведение операции изменения размера вектора.
Критика векторов и контрдоводы.
АиСД: фундаментальное алгоритмическое введение 72
Функциональная спецификация.
Свойства операций.
Логическое описание.
Отображение на Си.
Обратно совместимый с Си контейнер Си++.
Физическое представление.
Реализация вектора на Си.
Пример кода с использование realloc. Ускорение реализации путём использования более совершенного механизма распределения памяти.
Отображение на Паскаль: идея для Delphi.
АиСД: фундаментальное алгоритмическое введение 72
Тип очередь.
Понятие очереди.
Задачи на очереди:
• моделирование реальных очередей;
• собственные задачи информатики.
Функциональная спецификация.
Формулы.
Рекурсивный характер очереди. Свойства операций. Отличие очереди от файла: разрушающее чтение и неразрушающая запись. Французская терминология.
АиСД: фундаментальное алгоритмическое введение 72
Логическое описание.
Очереди в языках моделирования и в библиотеках универсальных систем программирования.
Физическое представление.
Отображение на файл. Достоинства и недостатки. Сложностные оценки.
Пример кода на стандартном Паскале.
Отображение на массив:
• трудоголическая;
• ленивая;
• и кольцебуферная стратегии.
АиСД: фундаментальное алгоритмическое введение 72
Сложностные оценки.
Пример кода на Си.
Отображение на динамические структуры.
Терминатор очереди.
Графическая иллюстрация.
Рекурсивные процедуры реверса и уничтожения очереди. Код на языке Си.
Конец лекции [email protected]