Содержание
- - Может ли топологическая сортировка иметь циклы?
- - Как определить, есть ли у графика цикл?
- - Что такое время выполнения топологической сортировки?
- - Почему у топологической сортировки не может быть циклов?
- - Зачем нужна топологическая сортировка?
- - Самостоятельная петля - это цикл?
- - Топологическая сортировка - DFS или BFS?
- - Какова временная сложность алгоритма топологической сортировки?
Может ли топологическая сортировка иметь циклы?
Если в графе есть цикл, топологический порядок существовать не может.. Представьте себе простейший цикл, состоящий из двух ребер: (a, b) и (b, a). Топологический порядок, если бы он существовал, должен был бы удовлетворять тому, что a должно стоять перед b, а b должно стоять перед a. Это невозможно.
Как определить, есть ли у графика цикл?
Обнаружение цикла
Существование цикла в ориентированных и неориентированных графах можно определить с помощью находит ли поиск в глубину (DFS) ребро, которое указывает на предка текущей вершины (оно содержит задний край). Все задние края, которые пропускает DFS, являются частью циклов.
Что такое время выполнения топологической сортировки?
Сложность времени: О (В + Е). Вышеупомянутый алгоритм - это просто DFS с дополнительным стеком. Таким образом, временная сложность такая же, как у DFS.
Почему у топологической сортировки не может быть циклов?
Алгоритм Кана
В противном случае в графе должен быть хотя бы один цикл и, следовательно, топологическая сортировка невозможна. Отражая неединственность результирующей сортировки, структура S может быть просто набором, очередью или стеком. В зависимости от порядка удаления узлов n из набора S создается другое решение.
Зачем нужна топологическая сортировка?
Топологическая сортировка берет ориентированный ациклический граф и производит такой линейный порядок всех его вершин, что если граф G содержит ребро (v, w), то вершина v стоит перед вершиной w в порядке. ... Основная причина, по которой мы хотим вызвать поиск в глубину, - чтобы вычислить время финиша для каждой из вершин.
Самостоятельная петля - это цикл?
Согласно Википедии, цикл в графе - это множество ребер с четной степенью в каждой вершине; также называется множеством четных ребер или, вместе с его вершинами, четным подграфом. ... Следовательно self-loop - это цикл на вашем графике.
Топологическая сортировка - DFS или BFS?
Топологическая сортировка может быть выполнена как DFS, так и BFS, этот пост, однако, касается подхода топологической сортировки BFS, широко известного как алгоритм Хана.
Какова временная сложность алгоритма топологической сортировки?
В случае нахождения топологического упорядочения ориентированного ациклического графа (DAG) используются алгоритмы топологической сортировки Кана и поиска в глубину (DFS). Временная сложность обоих этих алгоритмов равна О (| V | + | E |).
Интересные материалы:
Радость - это плод Духа?
Радуга - это цвет: да или нет?
Радужная форель полезнее лосося?
Рагнарок настоящий?
RAID - это SATA?
RAID - это то же самое, что и IDE?
Райли подавлена в фильме «Наизнанку»?
Ракеты «Союз» все еще используются?
Ракеты быстрее реактивных самолетов?
Ракутен больше, чем Amazon?