Добрый вечер,
Мне нужно немного помочь увидеть что-то насквозь. Вот ситуация:
У меня есть матрица элементов, например:
Где каждая запись может рассматриваться как узел (узлы не имеют связанных идентификаторов, я просто обозначил их для простоты объяснения). Затем к элементу «6» можно получить доступ как матрицу [1] [2] и т. Д. c.
Теперь я преобразую это в следующую структуру двудольного графа:
Теперь, добавляя ребро слева направо, я получаю следующее вложенное l oop:
for (int i = 1; i <= 8; i++) {
for (int j = 1; j <= 8; j++) {
capacityGraph[i][j + 8] = 1; //First layer to second layer
}
}
Теперь мой вопрос:
Есть ли способ доступа к матричному элементу из двудольного обхода (не обязательно должен быть в том же l oop)? Я думаю, что решение должно быть простым, я просто не могу продумать его полностью. Но, например, если я = 6, то я знаю, что смотрю на 10-й узел. Как мне перевести это в матрицу [2] [2]? И также для j-й индексации.
Я посмотрел несколько ссылок, и я действительно думаю, что ответ здесь:
Как сопоставить индексы матрицы с 1 массив (C ++)?
, но я не могу полностью соединить точки по какой-либо причине. Любая помощь с благодарностью! Спасибо.