Я пытаюсь использовать тип смежности Boost и у меня возникают проблемы с пониманием документации .
Скажем, я определяю класс с именем State и создаю экземпляр одного экземпляра для каждого штата в США:
class State { ... };
State california, oregon, nevada, arizona, hawaii, ...
Я хочу ввести их в boost :: adjacency_list, вершины - это состояния, а края - это границы. Для состояний, которые я перечислил выше, я думаю, что график будет иметь эти данные:
california : oregon, nevada, arizona
hawaii :
oregon : california, nevada
nevada : oregon, california, arizona
arizona : california, nevada
Я понимаю, как поместить целые числа в граф, и я подумал о том, чтобы просто создать массив состояний и вставить их индекс массива в граф, но кажется, что я должен просто сказать:
add_edge(california, oregon, graph);
но, конечно, это не работает. Пожалуйста, помогите!
Edit:
Вот пример почти того, что мне нужно.