У меня есть неориентированный граф, который представлен списком смежности. Я пытаюсь прочитать уникальные ребра из графика (потому что его ненаправленный, если рассматривается 0-1, 1-0 не должно быть). Прямо сейчас, я думаю, что использовал бы поле в списке смежности, чтобы указать, что ребро уже прочитано, но даже для его установки мне нужно пройти по списку вершины. Есть ли хороший способ сделать это?
Подумайте о том, чтобы сохранить в unordered_map то, что вы уже прошли, заполнив его по мере прохождения. Вы можете задать ключ как пару (узел1, узел2), а запись — любую вспомогательную информацию, которую вам нужно сохранить об этом ребре, а затем при переходе посмотрите, есть ли у вас (узел1, узел2) или (узел2, узел1) в unordered_map. Если вы делаете, край, если не уникальный.
Других решений пока нет …