我有一个定义如下的图表(使用boost):
struct NodeData{ /*...*/ };
struct EdgeData{ /*...*/ };
typedef adjacency_list<setS, setS, undirectedS, NodeData, EdgeData> MyGraph;
MyGraph G;
该图是迭代更新的(通过添加/删除一些边/顶点)。在每次迭代中,我想评估这个图 G 占用的内存空间。我该怎么做?如果我计算 V =“NodeData 的大小”和 E =“EdgeData 的大小”并且在每次迭代中,图形使用的内存将与以下成正比:nbr_vertices * V + nbr_edges * E 是否有意义?