Changeset 784:9d6c3e8b2421 in lemon
- Timestamp:
- 08/23/09 11:11:49 (15 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/hypercube_graph.h
r782 r784 288 288 /// differ only on one position in the binary form. 289 289 /// This class is completely static and it needs constant memory space. 290 /// Thus you can neither add nor delete nodes or edges. 290 /// Thus you can neither add nor delete nodes or edges, however 291 /// the structure can be resized using resize(). 291 292 /// 292 293 /// This type fully conforms to the \ref concepts::Graph "Graph concept". … … 306 307 /// Constructs a hypercube graph with \c dim dimensions. 307 308 HypercubeGraph(int dim) { construct(dim); } 309 310 /// \brief Resizes the graph 311 /// 312 /// This function resizes the graph. It fully destroys and 313 /// rebuilds the structure, therefore the maps of the graph will be 314 /// reallocated automatically and the previous values will be lost. 315 void resize(int dim) { 316 Parent::notifier(Arc()).clear(); 317 Parent::notifier(Edge()).clear(); 318 Parent::notifier(Node()).clear(); 319 construct(dim); 320 Parent::notifier(Node()).build(); 321 Parent::notifier(Edge()).build(); 322 Parent::notifier(Arc()).build(); 323 } 308 324 309 325 /// \brief The number of dimensions. -
test/digraph_test.cc
r783 r784 379 379 typedef FullDigraph Digraph; 380 380 DIGRAPH_TYPEDEFS(Digraph); 381 381 382 Digraph G(num); 383 check(G.nodeNum() == num && G.arcNum() == num * num, "Wrong size"); 384 385 G.resize(num); 386 check(G.nodeNum() == num && G.arcNum() == num * num, "Wrong size"); 382 387 383 388 checkGraphNodeList(G, num); -
test/graph_test.cc
r783 r784 271 271 272 272 Graph G(num); 273 check(G.nodeNum() == num && G.edgeNum() == num * (num - 1) / 2, 274 "Wrong size"); 275 276 G.resize(num); 277 check(G.nodeNum() == num && G.edgeNum() == num * (num - 1) / 2, 278 "Wrong size"); 279 273 280 checkGraphNodeList(G, num); 274 281 checkGraphEdgeList(G, num * (num - 1) / 2); … … 415 422 check(G.height() == height, "Wrong row number"); 416 423 424 G.resize(width, height); 425 check(G.width() == width, "Wrong column number"); 426 check(G.height() == height, "Wrong row number"); 427 417 428 for (int i = 0; i < width; ++i) { 418 429 for (int j = 0; j < height; ++j) { … … 490 501 491 502 HypercubeGraph G(dim); 503 check(G.dimension() == dim, "Wrong dimension"); 504 505 G.resize(dim); 506 check(G.dimension() == dim, "Wrong dimension"); 507 492 508 checkGraphNodeList(G, 1 << dim); 493 509 checkGraphEdgeList(G, dim * (1 << (dim-1)));
Note: See TracChangeset
for help on using the changeset viewer.