График - Квадрат ориентированного графа

Да, это будет вопрос для домашней работы (я занимаюсь самообучением, а не для университета), но я не прошу решения. Вместо этого я надеюсь прояснить сам вопрос.

В CLRS 3-е издание , стр. 593, акциз 22.1-5,

Квадратом ориентированного графа G = (V, E) называется граф G^2 = (V, E^ 2) такое, что (u,v) ∈ E^2 тогда и только тогда, когда G содержит путь с не более чем двумя ребрамимежду u и v. Опишите эффективные алгоритмы вычисления G2 из G как для представления G в виде списка смежности, так и в виде матрицы смежности. Проанализируйте время выполнения ваших алгоритмов.

Однако во 2-м издании CLRS (больше не могу найти ссылку на книгу), стр. 530, тот же акциз, но с немного другим описанием:

Квадрат ориентированного графа G = (V, E) граф G^2 = (V, E^2) такой, что (u,w) ∈ E^2 тогда и только тогда, когда для некоторого v ∈ V оба (u,v) ∈ E и (v,w) ∈ E. То есть G^2 содержит ребро между u и w всякий раз, когда G содержит путь с ровно двумя ребрамимежду u и w. Опишите эффективные алгоритмы вычисления G^2 из G как для списка смежности, так и для представления матрицы смежности G. Проанализируйте время выполнения ваших алгоритмов.

Для старого акциза с «ровно двумя ребрами» я могу его понять и решить. например, для списка смежности я просто делаю v->neighbour->neighbour.neighbour, а затем добавляю (v, сосед.сосед) к новому E^2.

Но для нового акциза с «максимум двумя ребрами» я смущен.

Что означает «тогда и только тогда, когда G содержит путь с не более чем двумя ребрами между u и v»?

Поскольку одно ребро может удовлетворять условию «не более двух ребер», если u и v имеют только один путь, который содержит только одно ребро, должен ли я добавить (u, v) к E^2?

Что если у u и v есть путь с 2 ребрами, но также есть другой путь с 3 ребрами, могу ли я добавить (u, v) к E^2?

9
задан Jackson Tale 11 March 2012 в 07:52
поделиться