- •Примерный список дополнительных вопросов по курсу «Структуры и алгоритмы обработки данных» для групп а-80, а-90, а-100, ау-110, уч. Год 2011/2012, весенний семестр
- •Что такое комбинаторные задачи?
- •Что такое план задачи? допустимый план? оптимальный план?
- •Чем различаются комбинаторные задачи с фиксированной и нефиксированной размерностью?
- •Как зависит трудоемкость перебора от числа переменных и от числа возможных значений переменных?
- •Что называется рекордом при решении задач оптимизации?
- •В каких случаях можно сократить перебор с возвратами?
- •Для каких задач может использоваться метод --отсечений?
- •Что такое -отсечение? -отсечение?
- •Как поступают, если в методе --отсечений перебор остается слишком большим?
- •Какой смысл имеет операция приведения матрицы в алгоритме решения задачи
- •Как организуется ветвление при решении задачи коммивояжера методом ветвей и границ?
- •В чем идея метода динамического программирования для решения комбинаторных задач?
- •Что такое оценка сложности задачи?
- •Какая именно сложность рассматривается при изучении теории вычислительной сложности?
- •Что такое массовая задача и индивидуальная задача?
- •Что является аргументом функций, оценивающих сложность алгоритмов и задач?
- •Как формулируется задача о выполнимости кнф?
- •Каков смысл каждого из 6 типов условий, накладываемых на нмт в доказательстве теоремы Кука?
- •Каков смысл этих условий в совокупности?
- •Какую практическую пользу может принести доказательство np-полноты конкретной задачи?
- •Как доказывается np-полнота конкретных задач?
- •Приведите несколько примеров np-полных задач.
- •Почему задача о рюкзаке, являясь np-полной, имеет эффективные алгоритмы решения?
- •Что такое псевдополиномиальный алгоритм?
- •Какую задачу решает алгоритм Дейкстры и в чем идея этого алгоритма?
- •Какова трудоемкость алгоритмов Флойда и Дейкстры?
- •Что такое поток в сети?
- •В чем идея алгоритма поиска аугментальной цепи?
Какую задачу решает алгоритм Дейкстры и в чем идея этого алгоритма?
Дан орграф G = (V, E), матрица длин ребер {bij} (если ребра нет, bij = ).
Ограничение: длина всех ребер неотрицательная.
Даны две вершины X и Y.
Построить кратчайший путь из X в Y.
Основная идея: использовать ту же формулу пересчета, что в алгоритме Флойда, но рассматривать только те вершины, которые лежат на путях, выходящих из X.
Трудоемкость: T(N, M) = O(N2).
Построение минимального расстояния между вершинами.
Идея: Hа каждом шаге пытаемся уменьшить кратчайшее расстояние до непросмотренных вершин, используя очередную вершину, длину пути к которой уменьшить уже нельзя.
Какова трудоемкость алгоритмов Флойда и Дейкстры?
Трудоёмкость алг. Флойда T(n,m)=O(n^3), т. к. на каждом К-м шаге обсчитываем мат-цу (n*n) и для каждой вершины. Трудоёмкость Дейкстры: T(n,m)= O(n^2), т.к. на каждой итерации нужно просмотреть число вер-н(n), чтобы включить все вер-ны нам нужно n итераций.
Алгоритм Флойда в среднем работает быстрее, если нам нужно найти все расстояния.
Что такое поток в сети?
Потоком в транспортной сети Т называется неотрицательная вещественная функция, определенная на множестве дуг, удовлетворяющая условиям:
ограниченности: поток по любой дуге сети не превосходит пропускной способности этой дуги;
сохранения: суммарный поток, заходящий в любую вершину сети (кроме истока и стока) равен суммарному потоку, выходящему из этой вершины.
Дуга сети называется насыщенной, если поток по этой дуге равен пропускной способности этой дуги.
Поток по пути называется полным, если хотя бы одна дуга пути насыщена.
Чем отличаются источник и сток от остальных вершин?
От источника существуют пути, а к источнику нет пути, к стоку ведут пути, а из стока нет пути
S- исток(источник чего-либо); T –сток (там, где потребляется).
Источник – это вершина двуполюсного оргафа, которой инцидентны только исходящие дуги.
Сток – это вершина двуполюсного оргафа, которой инцидентны только входящие дуги.
Каков смысл уравнений сохранения потока?
Уравнение сохранения потока – это путь от источника к стоку, в котором для прямых дуг xij<yij, для обратных xij<0
Что такое аугментальная цепь?
Аугментальная цепь потока из s в t – связная последовательность прямых и обратных дуг, по которым из s в t можно послать несколько единиц потока.
Как можно увеличить поток, если имеется аугментальная цепь?
Аугментальная цепь используется для выбора такого способа изменения потока, при котором поток в узле увеличится и при этом для каждого внутреннего узла цепи не будет нарушено условие сохранения потока.
Пусть (i,j) ориентированная дуга из i в j. Поток по данной дуге может быть увеличен на qj единиц, если дуга (i,j) является прямой и узлу j приписываеся пометка +qj, i. Величина qj не может превосходить остат. Пропускные способности ui,j – fii.
Т.е. поток по прямой дуге (i,j) можно увеличить на величину qj, где qj = min (qj, ui,j – fii)
