Всем счастливой пасхи.
В настоящее время я изучаю топологическую сортировку и задаюсь вопросом о том, какая топологическая сортировка пытается сортировать на самом деле.
В Руководстве по разработке алгоритмов топологическая сортировка описывается следующим образом:
Топологическая сортировка - самая важная операция для ориентированных ациклических графов (DAG). Он упорядочивает вершины на линии так, что все направленные ребра идут слева направо.
Эта смелая часть меня смущает. Так сортирует ли топологическая сортировка вершины или все ориентированные ребра?
Возьмем пример, который тоже есть в книге.
Итак, для указанного выше DAG мы можем получить топологическую сортировку (G, A, B, C, F, E, D).
Я могу понять такого рода. Сортированы не только вершины, но и ребра, то есть G-> A-> B-> C-> F-> E-> D, это соответствует приведенному выше описанию книги ADM: all directed edges go from left to right
Но что, если я удалю край B-> C? Полученный граф по-прежнему является DAG, но будет ли топологическая сортировка по-прежнему (G, A, B, C, F, E, D) ?
Если да, то я думаю, что края не сортируются, поскольку A-> B-> C больше не существует, вместо этого это A-> B и A-> C. Итак, это все еще актуальная топологическая сортировка? Можем ли мы по-прежнему считать (G, A, B, C, F, E, D) допустимой сортировкой, даже если A является родителем B и C?
Спасибо