Что именно представляют собой предки в DAG

#algorithm #graph-algorithm #directed-acyclic-graphs #ancestor

#алгоритм #граф-алгоритм #направленные ациклические графы #предок

Вопрос:

Я новичок в теории графов и смущен определением предков в DAG (или в общем графике).

 For example in the following DAG

1--->2--->3<---4<---5
 

Если я сначала запускаю DFS с 1 вершины, то пройденный путь равен 1—2—3. Затем, если я начну DFS с вершины 5,
то пройденный путь будет равен 5—4. Вершина 3 больше не посещается. Итак, порядок посещений равен 1 2 3 5 4.
Как насчет предков 3. Они тоже только 1,2 или 4,5?
как насчет предка Предка из 4. Это только 5 или 1,2, поскольку они также были посещены до посещения 5?

Ответ №1:

Предками вершины v в DAG является множество всех вершин v ‘ != v таких, что v достижимо из v ‘. Итак, в вашем примере предками 3 будут 1, 2, 4 и 5.

Конечно, все по-другому, если вы просто смотрите на определенный путь: таким образом, предки 3 в пути 1-> 2-> 3 будут просто 1 и 2.

Комментарии:

1. Вы правы. В определении предков важно ‘v достижимо из v’. Таким образом, предками 3 могут быть 1, 2, 4 и 5.