Представление графа. с++
Здравствуйте, я знаю, что граф можно представить в виде матрицы смежности и списков смежности, но зачем может понадобиться такое представление:
typedef std::map TAdjacencyList; /*TEdgeProperty - св-ва ребра, например вес*/
typedef std::map TAdjacencyData;
TAdjacencyData Adjacencies;
зачем мапы-то нужны?