|
misc_stp.c File Reference Detailed DescriptionMiscellaneous methods used for solving Steiner problems. This file includes miscellaneous methods used for solving Steiner problems. For more details see Miscellaneous methods used for Steiner tree problems page. Definition in file misc_stp.c. #include <assert.h>#include <string.h>#include "heur_tm.h"#include "probdata_stp.h"#include "portab.h"#include "scip/misc.h"Go to the source code of this file.
Function Documentation
internal method for combining the siblings after the root has been deleted
Definition at line 376 of file misc_stp.c. References PHeap_Node::prev, SCIPpairheapMergeheaps(), and PHeap_Node::sibling. Referenced by SCIPpairheapDeletemin().
internal method used by 'pairheap_buffarr' Definition at line 564 of file misc_stp.c. References PHeap_Node::child, PHeap_Node::element, and PHeap_Node::sibling. Referenced by SCIPpairheapBuffarr().
compares distances of two GNODE structures Definition at line 40 of file misc_stp.c. append copy of list pertaining to node2 to node1
Definition at line 76 of file misc_stp.c. References Int_List_Node::index, and Int_List_Node::parent. Referenced by bd3_reduction(), bdr_reduction(), bound_reduce(), da_reduce(), degree_test(), degree_test_pc(), degree_test_sap(), graph_edge_reinsert(), graph_knot_contract(), graph_knot_contractpc(), graph_pack(), nv_reduction(), nv_reductionAdv(), pcgraphtrans(), rptReduction(), sl_reduction(), traverseChain(), and trydg1edgepc().
free list
Definition at line 140 of file misc_stp.c. References Int_List_Node::parent. Referenced by bd3_reduction(), bdr_reduction(), bound_reduce(), da_reduce(), daPc_reduce(), degree_test_pc(), graph_edge_del(), graph_edge_reinsert(), graph_knot_contract(), graph_knot_contractpc(), graph_pack(), pcgraphtrans(), traverseChain(), and trydg1edgepc().
insert a new node
Definition at line 59 of file misc_stp.c.
cut tree at given node
Definition at line 184 of file misc_stp.c. References ST_Node::edge, and ST_Node::parent. Referenced by SCIPheurImproveSteinerTree().
makes vertex v the root of the link cut tree
Definition at line 254 of file misc_stp.c. References ST_Node::edge, flipedge, and ST_Node::parent. Referenced by SCIPheurImproveSteinerTree(). finds the max edge value between node 'v' and the root of the tree
Definition at line 230 of file misc_stp.c. References ST_Node::edge, and ST_Node::parent. Referenced by SCIPheurImproveSteinerTree().
finds minimal non-key-node value between node 'v' and the root of the tree
Definition at line 193 of file misc_stp.c. References ST_Node::edge, and ST_Node::parent. Referenced by SCIPheurImproveSteinerTree().
inits a node, setting 'parent' and 'edge' to its default values
Definition at line 162 of file misc_stp.c. References ST_Node::edge, and ST_Node::parent. Referenced by SCIPheurImproveSteinerTree(). renders w a child of v; v has to be the root of its tree
Definition at line 171 of file misc_stp.c. References ST_Node::edge, and ST_Node::parent. Referenced by SCIPheurImproveSteinerTree(). add heap to heap
Definition at line 331 of file misc_stp.c. References PHeap_Node::child, PHeap_Node::key, PHeap_Node::prev, and PHeap_Node::sibling. Referenced by SCIPpairheapInsert().
stores all elements of the pairing heap in an array
Definition at line 581 of file misc_stp.c. References pairheapRec(). Referenced by lca().
deletes the root of the paring heap, concomitantly storing its data and key in '*element' and '*key' respectively
Definition at line 473 of file misc_stp.c. References PHeap_Node::child, and pairheapCombineSiblings(). Referenced by SCIPheurImproveSteinerTree().
frees the paring heap with root 'p'
Definition at line 538 of file misc_stp.c. References SCIPpairheapFree(). Referenced by SCIPheurImproveSteinerTree(), and SCIPpairheapFree().
inserts a new node into the pairing heap
Definition at line 439 of file misc_stp.c. References PHeap_Node::child, PHeap_Node::element, PHeap_Node::key, PHeap_Node::prev, SCIPpairheapAddtoheap(), and PHeap_Node::sibling. Referenced by SCIPheurImproveSteinerTree().
links nodes 'root1' and 'root2' together, roots the resulting tree at root1 and sets root2 to NULL
Definition at line 510 of file misc_stp.c. References SCIPpairheapMergeheaps(). Referenced by SCIPheurImproveSteinerTree(). links nodes 'root1' and 'root2' together
Definition at line 288 of file misc_stp.c. References PHeap_Node::child, PHeap_Node::key, PHeap_Node::prev, and PHeap_Node::sibling. Referenced by pairheapCombineSiblings(), and SCIPpairheapMeldheaps().
finds and returns the component identifier
Definition at line 620 of file misc_stp.c. References UnionFind_Structure::parent. Referenced by lca(), SCIPheurImproveSteinerTree(), SCIPunionfindUnion(), voronoi_repair(), and voronoi_repair_mult().
frees the data fields of the union-find structure
Definition at line 687 of file misc_stp.c. References UnionFind_Structure::parent, and UnionFind_Structure::size. Referenced by SCIPheurImproveSteinerTree().
initializes the union-find structure 'uf' with 'length' many components (of size one)
Definition at line 600 of file misc_stp.c. References UnionFind_Structure::count, UnionFind_Structure::parent, and UnionFind_Structure::size. Referenced by SCIPheurImproveSteinerTree().
merges the components containing p and q respectively
Definition at line 644 of file misc_stp.c. References UnionFind_Structure::count, UnionFind_Structure::parent, SCIPunionfindFind(), and UnionFind_Structure::size. Referenced by lca(), and SCIPheurImproveSteinerTree(). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||